Tag: int

Java – 用整数和字节进行位移

考虑以下代码(其中byteIndex是一个int): int bitNumber = b-(8*byteIndex); bitMask = 0x8>>(byte)bitNumber; 这会产生错误 error: possible loss of precision 编译时(必需字节,找到int)。 代码 int bitNumber = b-(8*byteIndex); bitMask = 0x8>>2; 编译好。 这里有什么问题,如何修复第一个允许按int值移位的示例? 编辑:在评论之后,这是一个更完整的例子: 48) int byteIndex; 49) byte bitMask; 50) int bitNumber; // assign value to byteIndex 67) bitNumber = b-(8*byteIndex); 68) bitMask = 0x8>>bitNumber; 并且给出的错误是: …MyClass.java:68: error: possible loss of precision […]

用户输入Java中的字符串和整数

System.out.print(“Name : “); String name = in.nextLine(); System.out.print(“Age : “); int age = in.nextInt(); System.out.print(“City : “); String city = in.nextLine(); 输出将是: 名称:测试 年龄:20岁 建立成功 当我调试它们时,它不会读取“city”的用户输入。 但是当我将“age”的数据类型更改为string时,它将会读取。 如何通过系统读取城市的用户输入,将年龄的数据类型保持为int?

if的更短解决方案,否则if,否则if

我正在寻找一种缩短代码的方法,避免重复代码和if语句。 我正在做的是创建一个计算器,在字符串中搜索运算符“* / + – ”并相应地执行它们。 有任何想法吗? if(exp.charAt(i)==’*’) { newResult=Integer.parseInt(exp.substring(0, i)) * Integer.parseInt(exp.substring(i+1, exp.length())); primeResult = newResult; System.out.println(primeResult); } else if(exp.charAt(i)==’/’) { newResult=Integer.parseInt(exp.substring(0, i)) / Integer.parseInt(exp.substring(i+1, exp.length())); primeResult = newResult; System.out.println(primeResult); } else if(exp.charAt(i)==’+’) { newResult=Integer.parseInt(exp.substring(0, i)) + Integer.parseInt(exp.substring(i+1, exp.length())); primeResult = newResult; System.out.println(primeResult); } else if(exp.charAt(i)==’-‘) { newResult=Integer.parseInt(exp.substring(0, i)) – Integer.parseInt(exp.substring(i+1, exp.length())); primeResult = […]

如何在java中使用其他基数?

伙计们,如果int c = 10001; 这是一个二进制值。如果我想处理它就像乘以10怎么做?

动态地将KB转换为MB,GB,TB

public String size(int size){ String hrSize = “”; int k = size; double m = size/1024; double g = size/1048576; double t = size/1073741824; DecimalFormat dec = new DecimalFormat(“0.00”); if (k>0) { hrSize = dec.format(k).concat(“KB”); } if (m>0) { hrSize = dec.format(m).concat(“MB”); } if (g>0) { hrSize = dec.format(g).concat(“GB”); } if (t>0) { hrSize = […]

从Java中的int获取数字的特定数字

可能重复: 返回整数的第一个数字 在我的java程序中,我将一个数字存储在一个数组中。 p1Wins[0] = 123; 我如何检查p1Wins[0]的第一个数字? 还是第二个或第三个? 我只需要能够找到任何特定数字的值。 谢谢!

JOptionPane输入到int

我试图让一个JOptionPane得到一个输入并将其分配给一个int,但我遇到了一些变量类型的问题。 我正在尝试这样的事情: Int ans = (Integer) JOptionPane.showInputDialog(frame, “Text”, JOptionPane.INFORMATION_MESSAGE, null, null, “[sample text to help input]”); 但我得到: Exception in thread “main” java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer 这听起来很合乎逻辑,我想不出另一种方法来实现这一点。 提前致谢

从2或4个字节转换为有符号/无符号short / int

我必须将字节转换为signed / unsigned int或short。 以下方法是正确的吗? 签名哪个未签名? 字节顺序:LITTLE_ENDIAN public static int convertTwoBytesToInt1(byte b1, byte b2) { return (int) ((b2 << 8) | (b1 & 0xFF)); } VS. public static int convertTwoBytesToInt2(byte b1, byte b2) { return (int) (( (b2 & 0xFF) << 8) | (b1 & 0xFF)); } 和 public static int convertFourBytesToInt1(byte b1, byte b2, […]

如何限制双打印的小数位数?

这个程序有效,除非nJars的数量是7的倍数,我会得到一个答案,如$ 14.999999999999998。 对于6,输出为14.08。 如何修复7的倍数的exception,这样它会显示14.99美元? import java.util.Scanner; public class Homework_17 { private static int nJars, nCartons, totalOunces, OuncesTolbs, lbs; public static void main(String[] args) { computeShippingCost(); } public static void computeShippingCost() { System.out.print(“Enter a number of jars: “); Scanner kboard = new Scanner (System.in); nJars = kboard.nextInt(); int nCartons = (nJars + 11) / 12; int […]

如何在Java中将char转换为int?

(我是Java编程的新手) 我有例如: char x = ‘9’; 我需要得到撇号中的数字,数字9本身。 我试着做以下事情, char x = 9; int y = (int)(x); 但它不起作用。 那么我该怎么做才能得到撇号中的数字呢?