Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Java中似乎没有任何带引号的功能_Java_Macos_Terminal_Osx Mavericks - Fatal编程技术网

在Java中似乎没有任何带引号的功能

在Java中似乎没有任何带引号的功能,java,macos,terminal,osx-mavericks,Java,Macos,Terminal,Osx Mavericks,每次我试着做 System.out.println("Hello World"); 然后它给出一个错误,说“预期” 我迷失了方向,我想放弃这一点。Java在Eclipse和Netbeans中似乎工作得很好,但在Mac终端中,它一直存在这个问题 我甚至试过这个 String s = "Hello World"; System.out.println(s); 但它在字符串s行上给出了“非法字符”错误。“\”怎么是非法字符 自从我更新到Mavericks之后,这个问题就开始出现了 我的规格: JA

每次我试着做

System.out.println("Hello World");
然后它给出一个错误,说“预期” 我迷失了方向,我想放弃这一点。Java在Eclipse和Netbeans中似乎工作得很好,但在Mac终端中,它一直存在这个问题

我甚至试过这个

String s = "Hello World";
System.out.println(s);
但它在字符串s行上给出了“非法字符”错误。“\”怎么是非法字符

自从我更新到Mavericks之后,这个问题就开始出现了

我的规格:

JAVA VERSION 
{ 
java version "1.7.0_25"
Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)
}

从OSX MAVERICKS上的终端运行

我相信这与您的代码编辑器有关。如果您使用简单的文本编辑器而不是代码编辑器,您的引号字符可能会被类似的unicode字符替换,这将使您的代码无法编译

解决方案:确保使用已建立的代码编辑器


编辑:如您所见,当您在代码中使用无效的Unicode字符时,会弹出“非法字符”错误。

我是Java新手,也有同样的问题,但我设法解决了

我正在遵循教科书中的一个代码示例,虽然它看起来相同,但编译时会失败。当我从出版商下载并复制/粘贴代码示例到文本编辑器中的example.java文件中时,它会编译得很好,所以很明显,这与我的代码有关。当我撤消并返回代码时,它再次失败。我的代码是:

/* 
   This is a simple Java program. 

   Call this file Example.java. 
*/ 
class Example { 
  // A Java program begins with a call to main(). 
  public static void main(String args[]) { 
    System.out.println("Java drives the Web."); 
  } 
}
我安装了一个不同的文本编辑器-TextWrangler,在屏幕底部将格式设置为Java,重新编写代码,效果很好。我发现Textedit中的引号是倾斜的,TextWrangler中的引号是直的

我对它的了解还不够-也许我必须在textedit或其他什么中设置不同的unicode,但我现在使用textWrangler,因为它更容易阅读代码,因为它通过颜色高亮显示


希望能有所帮助。

向我们展示所有代码。我们实际上是指所有代码。整个文件。看起来您的文件只包含
String s=“Hello world”
。注意:Java不像Python那样是一种脚本语言,您的模块只能包含
print(“Hello world”)
(使用Python 3)。请参阅有关Java的sane教程,如官方教程:@LuiggiMendoza,这与错误消息不一致。如果文件只有该行,编译器将生成“预期的类、接口或枚举”“消息。前一行中可能有不匹配的引用。这应该是注释,而不是答案。”。这是基于推测,你应该先问一个问题。这是一个基于错误消息和代码内容描述的有根据的猜测。如果证明我错了,请随意投反对票。不要投反对票,只要记住SO的目的是为未来的搜索者提供帮助。。。因此,除非我真的确定答案是正确的,否则我通常会避免基于猜测的答案。请参阅我对OP的评论,以获得至少同样可能的替代方案。我试着找一些参考资料,但没能很快找到。我将在这里作一个补充(这一次是在注释中:),并说“非法字符”仅在解析器发现不属于接受集的字符时才会显示。如果是缺少引号,我相信错误消息应该是“unterminated string constant”。这一点很好。你很可能是对的,在答案中加入你直觉的原因会有所帮助。