首页 > 其他分享 >2024.9.24-课后试验问题整理

2024.9.24-课后试验问题整理

时间:2024-09-24 20:03:34浏览次数:8  
标签:24 int 2024.9 System 按位 课后 println 100 out

1、java中字符和字符串用equals()方法进行判断是否相等。""比较的是地址
public class EnumTest {
public static void main(String[]args){
Size s=Size.SMALL;
Size t=Size.LARGE;
//s和t引用对象是否为同一个?
System.out.println(s
t);
//是原始数据吗?
System.out.println(s.getClass().isPrimitive());
//从字符串中转换
Size u=Size.valueOf("SMALL");
System.out.println(su); //true
for(Size value:Size.values()){
System.out.println(value);
}
}
enum Size{SMALL,MEDIUM,LARGE}
}
输出结果:
false
false
true
SMALL
MEDIUM
LARGE
枚举类的值是特定的对象,若相同则引用同一个对象。所以比较枚举类时可以用
也能用equals()方法。
2、
原码:最高位时符号位,0代表正数,1代表负数,非符号位为该数字绝对值的二进制。
反码:正数的反码与原码一致,负数的反码是对原码按位取反,符号位不变。
补码:正数的补码与原码一致,负数的补码是对原码按位取反加1,符号位不变。
import java.util.Scanner;

public class BitwiseOperations {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);

    System.out.print("请输入一个正数或负数: ");
    int number = scanner.nextInt();

    System.out.println("你输入的数是: " + number);
    System.out.println("其二进制表示: " + Integer.toBinaryString(number));

    // 按位与操作
    int andResult = number & 111; // 与1取与操作
    System.out.println("按位与操作 (与100): " + andResult + " (" + Integer.toBinaryString(andResult) + ")");

    // 按位或操作
    int orResult = number | 1; // 与1取或操作
    System.out.println("按位或操作 (或1): " + orResult + " (" + Integer.toBinaryString(orResult) + ")");

    // 按位异或操作
    int xorResult = number ^ 1; // 与1取异或操作
    System.out.println("按位异或操作 (异或1): " + xorResult + " (" + Integer.toBinaryString(xorResult) + ")");

    // 按位取反操作
    int notResult = ~number; // 取反
    System.out.println("按位取反操作: " + notResult + " (" + Integer.toBinaryString(notResult & 0xFFFFFFFF) + ")");

    // 左移操作
    int leftShiftResult = number << 1; // 左移1位
    System.out.println("左移操作 (左移1位): " + leftShiftResult + " (" + Integer.toBinaryString(leftShiftResult) + ")");

    // 右移操作
    int rightShiftResult = number >> 1; // 右移1位
    System.out.println("右移操作 (算术右移1位): " + rightShiftResult + " (" + Integer.toBinaryString(rightShiftResult) + ")");

    // 逻辑右移操作 (与无符号右移)
    int unsignedRightShiftResult = number >>> 1; // 逻辑右移1位
    System.out.println("逻辑右移操作 (无符号右移1位): " + unsignedRightShiftResult + " (" + Integer.toBinaryString(unsignedRightShiftResult & 0xFFFFFFFF) + ")");

    scanner.close();
}

}
输出结果:
请输入一个正数或负数: 100
你输入的数是: 100
其二进制表示: 1100100
按位与操作 (与100): 100 (1100100)
按位或操作 (或1): 101 (1100101)
按位异或操作 (异或1): 101 (1100101)
按位取反操作: -101 (11111111111111111111111110011011)
左移操作 (左移1位): 200 (11001000)
右移操作 (算术右移1位): 50 (110010)
逻辑右移操作 (无符号右移1位): 50 (110010)

Process finished with exit code 0

请输入一个正数或负数: -100
你输入的数是: -100
其二进制表示: 11111111111111111111111110011100
按位与操作 (与100): 12 (1100)
按位或操作 (或1): -99 (11111111111111111111111110011101)
按位异或操作 (异或1): -99 (11111111111111111111111110011101)
按位取反操作: 99 (1100011)
左移操作 (左移1位): -200 (11111111111111111111111100111000)
右移操作 (算术右移1位): -50 (11111111111111111111111111001110)
逻辑右移操作 (无符号右移1位): 2147483598 (1111111111111111111111111001110)

Process finished with exit code 0

通过观察按位与操作结果,可以得出结论,java中的数据采用补码表示的。
3、在java中数据类型较小的转化为数据类型较大的无精度损失,反过来会造成精度损失。
4、浮点数在计算机中以二进制的方式存储,所以无法完全精确的表示十进制分数。
public class Test {
public static void main(String[]args) {
System.out.println("0.05+0.01=" + (0.05 + 0.01));
System.out.println("1.0-0.42=" + (1.0 - 0.42));
System.out.println("4.015100=" + (4.015 * 100));
System.out.println("123.3/100" + (123.3 / 100));
}
}
运行结果:
0.05+0.01=0.060000000000000005
1.0-0.42=0.5800000000000001
4.015
100=401.49999999999994
123.3/1001.2329999999999999
5、在java中字符串用“+”连接。如果是字符串+数字,则根据加号前面的判断最终的结果。如果加号前面是字符串,则加号后面会被默认为字符串来进行计算。
public class Test {
public static void main(String[]args) {
int X=100;
int Y=200;
System.out.println("X+Y="+X+Y);
System.out.println(X+Y+"=X+Y");
}
}
运行结果:
X+Y=100200
300=X+Y
6、出30道计算题:
import java.util.Scanner;
public class Test {
public static void main(String[]args) {
Math.random();
Scanner s=new Scanner(System.in);
int n=0;
for(int i=0;i<30;i++){
String c=s.nextLine();
switch(c){
case "+":
System.out.println((int)(Math.random()100)+"+"+((int)(Math.random()100)));
break;
case "-":
System.out.println((int)(Math.random()100)+"-"+((int)(Math.random()100)));
break;
case "":
System.out.println((int)(Math.random()
100)+""+((int)(Math.random()100)));
break;
case "/":
System.out.println((int)(Math.random()100)+"/"+((int)(Math.random()100)));
break;
default:
System.out.println("重新输入");
}
}

标签:24,int,2024.9,System,按位,课后,println,100,out
From: https://www.cnblogs.com/LiuHuWei/p/18429855

相关文章

  • 2024.9.24- java开学测
    1、定义student类,其中包括五个私有变量(stunumber,name,age,sex,score)。各成员的含义如下:变量stunumber为字符串类型String,用于存储学生的学号(有8位数字组成)。变量name为字符串类型String,用于存储学生的姓名。变量age为int类型,用于存储学生的年龄。变量sex为boolean类型,用于存储学......
  • 美团2024年秋招第一场笔试【算法】
    1. 小美的因子查询题目链接:校招笔试真题_算法工程师、大数据开发工程师_牛客网小美对偶数因子很感兴趣,她将进行 T 次询问,每次都会给出一个正整数 x,请你告诉她 x 是否存在至少一个偶数因子。也就是说 x 是否存在某个因子是偶数。思路:一个数若存在因子是偶数则因子一......
  • SolidJS-每日小知识(9/24)
    对图片指定范围的区域进行填充显示1定义变量,svg和image//用于保存SVG元素的引用const[svgRef,setSvgRef]=createSignal<SVGSVGElement|null>(null);//图像原始尺寸constimageSize={width:11920,height:16850};//裁剪区域constcroppedScope......
  • 2024.9.24 思维导图与PDF
    哈哈哈终于有我也用过的东西啦~Xmind一款打工人用了都说好的软件(#.#)【知识小课堂1】不同款式的思维导图:【知识小课堂2】PDF转换器!1、PDF(便携式文档格式),这种文件格式与操作系统平台无关——PDF文件不管是在Windows还是别的操作系统中都是通用的。2、这一特点使它成为在I......
  • 【软考机考问答】—2024软考机考时间注意事项
    一、2024各地软考机考报名时间地区      报名时间 报名入口  免费题库  备考培训广东8月21日9:00-8月29日17:00报名入口免费题库备考培训江西8月20日9:00-9月13日17:00报名入口 免费题库备考培训安徽8月23日9:00-9月3日16:00报名入口免费题库备考培训甘肃8月26......
  • 2024 天池云原生编程挑战赛决赛名单出炉,冠军来自中山大学、昆仑数智战队
    9月20日,2024天池云原生编程挑战赛决赛答辩完美落幕,12支进入决赛的团队用精彩的答辩,为历时3个月的大赛画下了圆满的句号。其中,来自中山大学的陈泓仰以及来自昆仑数智的冉旭欣、沈鑫糠、武鹏鹏,以出色的方案、创新的优化思路、过硬的技术实力分获赛道一和赛道二的冠军。赛道一......
  • 2024 天池云原生编程挑战赛决赛名单出炉,冠军来自中山大学、昆仑数智战队
    9月20日,2024天池云原生编程挑战赛决赛答辩完美落幕,12支进入决赛的团队用精彩的答辩,为历时3个月的大赛画下了圆满的句号。其中,来自中山大学的陈泓仰以及来自昆仑数智的冉旭欣、沈鑫糠、武鹏鹏,以出色的方案、创新的优化思路、过硬的技术实力分获赛道一和赛道二的冠军。赛道......
  • 2024.9.24
    下周这时候我就回家了啊。国庆后大概就得寒假再回去了,要连着在宿舍呆三个月。有点害怕国庆结束后万一撑不下去怎么办,不过应该不会那么脆弱吧。高代课感觉啥都没讲,就是很重要但太基础的东西嘛。我其实不太懂这些交换律结合律啊之类的东西,是直接背下来每个结构有啥样的性质,还是......
  • 中秋献礼!2024年中科院一区极光优化算法+分解对比!VMD-PLO-Transformer-LSTM多变量时间
    中秋献礼!2024年中科院一区极光优化算法+分解对比!VMD-PLO-Transformer-LSTM多变量时间序列光伏功率预测目录中秋献礼!2024年中科院一区极光优化算法+分解对比!VMD-PLO-Transformer-LSTM多变量时间序列光伏功率预测效果一览基本介绍程序设计参考资料效果一览基本介绍1.中秋献礼!2024年......
  • Wordpress Plugins插件巡礼 [Updated: 2024-09-24]
    1.0前言因玩startup比賽,所以用到很多low-code和Wordpressplugins來建立網站/APP。有些工具確真提高了生產力,很符合我的“低投入高產出”風格,因此在這總結一下很好用的Wordpress plugins。2.0 wordpressstartertemplatewordpress有很多免費又好看的模板,用來快速建立自己......