Tag:

Java Double vs double:类类型与原始类型

我很好奇Java的类和double的原始类型之间的性能差异。 所以我创建了一个小基准测试,发现类类型比基本类型慢3到7倍。 (在本地机器OSX上为3倍,在ideone上为7倍) 这是测试: class Main { public static void main(String args[]) { long bigDTime, littleDTime; { long start = System.nanoTime(); Double d = 0.0; for (Double i = 0.0; i < 1432143.341; i += 0.1) { d += i; } long end = System.nanoTime(); bigDTime = end – start; System.out.println(bigDTime); } { long start […]

java.lang.Exception与滚动你自己的exception

您将在什么时候创建自己的exception类而不是使用java.lang.Exception? (所有的时间?只有它会在包外使用?只有它必须包含高级逻辑?等等……)

如何从cmd运行作为包的一部分的.class文件?

当我将我的类作为包的一部分并尝试从cmd运行它时,我不断收到错误。 这是使用javac然后使用java后的代码: class HelloWorld { public static void main(String[] args) { System.out.println(“Hello World!”); } } 然后代码不起作用: package com; class HelloWorld { public static void main(String[] args) { System.out.println(“Hello World!”); } } 尝试运行“java HelloWorld”后给我这个错误: Exception in thread “main” java.lang.NoClassDefFoundError: HelloWorld (wrong nam e: com/HelloWorld) at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(Unknown Source) at java.security.SecureClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.defineClass(Unknown Source) […]

有没有办法确定类是Java的实例的类型?

假设我有3个类,如下所示: class A {} class B extends A {} class C extends A {} 那么可以确定特定对象是A , B还是C的实例? 我认为这样的事情可能有用: if (myObject.getClass().isInstance(B.class)) { // do something for B } else (myObject.getClass().isInstance(C.class)) { // do something for C } else { // do something for A } 但是在阅读了一下之后,我认为它总是会评估为B,因为它只是测试一个演员是否有效并且它们之间没有实质性差异。

错误消息:Int无法转换为类型

我对java课程的介绍非常新,我正在寻找有关我收到的错误的帮助。 错误消息与实际代码一起发布在下面。 有谁知道为什么我收到这条消息,无论如何要帮助我? 代码能够编译和运行,但不是在最后打印我收到弹出错误消息(下面的屏幕截图)但我不明白它是什么意思或为什么我得到它。 有人可以帮忙吗? 谢谢! public class Employee10 { public static void main ( String args[] ) { Employee e1 = new Employee(); Employee[] arr = new Employee[2]; int j = 0; for ( int i=0; i < 3; i++) { arr[0] = e1; String nameF = Input.getString("Please enter a First Name"); String nameL […]

Java – 类“ClassName”和公共类“ClassName”之间的区别

有什么区别 class x { //code here } 和 public class x { //code here } 有时我会在互联网上看到例子,他们会有public class而不是class ,他们都是简单的程序。 我将class用于我的作业,其他人也是如此

不兼容的类型:void无法转换为int

对于Java和编程而言,我是一个非常新的人。 我想创建一个简单的程序,你猜你的年龄,如果你是对的,它会说“正确”,如果你错了,它会说“错误”。 这是我的代码: import java.util.InputMismatchException; import java.util.Scanner; // This will import just the Scanner class. public class GuessAge { public static int main(int[] args) { System.out.println(“\nWhat is David’s Age?”); Scanner userInputScanner = new Scanner(System.in); int age = userInputScanner.nextLine(); int validInput = 20; if (validInput == 20) { return System.out.println(“Correct!!”); } else { return System.out.println(“Wrong….”); } […]

Java编译错误:类Appletprac是公共的,应该在名为Appletprac.java的文件中声明

当我编译java程序时,我收到此错误:类Appletprac是公共的,应该在名为Appletprac.java的文件中Appletprac.java 这是我的java代码: import java.applet.*; import java.awt.*; // Graphics Class import javax.swing.*; import java.awt.event.*; /* */ public class Appletprac extends JApplet implements ActionListener { JButton OK; JRadioButton Font_Style1,Font_Style2,Font_Style3; ButtonGroup bg; JCheckBox Font_Family_Name; JTextField jt; int i; String s=””; public void init() { OK=new JButton(“OK”); Font_Family_Name=new JCheckBox(“Serif”); Font_Style1=new JRadioButton(“Plain”); Font_Style2=new JRadioButton(“Bold”); Font_Style3=new JRadioButton(“BoldItalic”); bg=new ButtonGroup(); jt=new JTextField(20); […]

从MATLAB调用Java

我一直在使用Swig为用C ++编写的库创建Java包装器。 包装器生成一个包然后jar 。 文件编译正确并与java完美配合,但我无法从MATLAB中调用它。 我尝试在MATLAB中的静态Java路径文件中添加jar路径,然后调用jar文件中的类,但是我得到错误”Undefined variable or class..”或者如果我尝试使用javaObject(…) “No class * can be located on Java class path” 。 我不确定我做错了什么。 编辑: 为了测试从MATLAB调用c ++库,我创建了一个简单的“数据读取器”类,它包含一个将随机生成的vector< vector >写入文本文件的函数和一个读取它的函数。 生成的swig文件是: SimpleReader.java , DoubleVector.java , exampleJNI.java , example.java , com.example.reader包中的DoubleVector2.java 。 这些被编译并打包到example.jar (生成的库dll也被打包到jar中)。 一切正常,从java调用它所以问题必须特定于MATLAB。 MATLAB没有太多代码,因为似乎没什么用。 我得到了 javaclasspath(‘c:/reader/reader.jar’); obj = com.example.reader.SimpleReader; 此时我得到’Undefined variable “com” or class “com.example.reader.SimpleReader”‘

在Java中访问静态字段的正确方法是什么?

我刚开始学习Java,我写了一个类来测试使用静态字段。 一切正常但在Eclipse中我看到一个图标,当它hover时出现:“应该以静态方式访问 CarCounter类型的静态方法getCounter。” 什么是正确的方式呢? 这是class级: public class CarCounter { static int counter = 0; public CarCounter(){ counter++; } public static int getCounter(){ return counter; } } 这是我尝试访问变量计数器的地方: public class CarCounterTest { public static void main( String args[] ){ CarCounter a = new CarCounter(); System.out.println(a.getCounter()); //This is where the icon is marked } }