首页后端开发JAVAjava代码及解释 java示例代码

java代码及解释 java示例代码

时间2023-04-10 07:19:02发布访客分类JAVA浏览992
导读:求解释一段java代码,详细一些 首先这段代码没有发全片段代码总体意思是模拟了两个数相加,输出结果private void calculation(String a, String b { //定义一个私有方法calculation有两个参...

求解释一段java代码,详细一些

首先这段代码没有发全

片段代码总体意思是模拟了两个数相加,输出结果

private void calculation(String a, String b){ //定义一个私有方法calculation有两个参数 a和b 两个参数的类型为String字符串类型

double v1 = Double.parseDouble(a); //定义一个double类型变量v1,将a变量转换成double类型(double双精度数字类型)赋值给v1

double v2 = Double.parseDouble(b); //定义一个double类型变量v2,将b变量转换成double类型(double双精度数字类型)赋值给v2

double v=0; //定义一个double类型变量v,初始值为0(这里java在编译后应该是double v=0.00D)

switch(op){ //JAVA中的switch函数(方法)参数是op【这里应该是有输入才对,该变量在代码中是有误】

case '+': //当传入的参数op为‘+’执行以下代码即两数相加,并将参数a,b置空

v = v1 + v2;

exit = '0';

a = b = null;

op = 'n';

break;

}

}

一段有意思的java代码请大家解释~

首先0x7FFFFFFF就是Java里面整形变量的最大值了,你可以看看Integer.MAX_VALUE,"0x7FFFFFFF

*

2.0"是,Java会把结果当做double型,因为double型的数值范围比int大,所以得到的是数学上正确的结果,然后强制转换我int就是Integer.MAX_VALUE了,第一个表达式为true;第二个里面"0x7FFFFFFF

*

2"会被认为是int型,因为0x7FFFFFFF和2都是合法的int,所以就是发生数值的溢出(int)(0x7FFFFFFF

*

2)就被算成-2了,你如果把第二个的结果显式制定为double型,得到的结果也是true:

double

d

=

0x7FFFFFFFL

*

2; //加L指定为long型

System.out.println((int)(0x7FFFFFFF

*

2.0)

==

(int)

d);

第三个因为数值比较小,所以是true。

帮忙解释下下面的Java代码

public static void main(String[] args) {

int rows = 10;

for(int i =0; irows; i++) { //打印行

int number = 1;

//打印空格字符串

System.out.format("%"+(rows-i)*2+"s","");

for(int j=0; j=i; j++) { //打印每一行得数字

System.out.format("%4d",number); //打印当前数字

number = number * (i - j) / (j + 1);  //计算下一位数字

}

System.out.println(); //换行

}

}

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: java代码及解释 java示例代码
本文地址: https://pptw.com/jishu/2510.html
php添加表数据失败 php数据库添加失败的原因 java编写圆柱体代码 java编程求圆柱体积

游客 回复需填写必要信息