标签: parseint

Javascript parseInt给出了非常意外的结果

可能重复:
JavaScript parseInt八进制错误的变通方法

我正在解析一个字符串以检查它是否是一个日期,我们现在发现我的方法不适用于八月或九月的日期.这就是我所做的(显然,输入并不是真正的硬编码,但为了简洁起见......):

var str = '2010-08-26 14:53';
var data = str.split(' ');  // ['2010-08-26', '14:53']
var date = data[0].split('-'); // ['2010', '08', '26]
var time = data[1].split(':'); // ['14', '53']

var yyyy = parseInt(date[0]); // 2010

// THIS IS WHERE STRANGE THINGS HAPPEN:
var MM = parseInt(date[1]); // 0 - not 08 or 8, as expected!
console.log(date[1]); // prints "08" (with quotes)
console.log(date[1].toString()); // prints 08 (no quotes)
console.log(parseInt(date[1].toString())); // prints 0 (!)
Run Code Online (Sandbox Code Playgroud)

这个问题出现了8,9月份和8楼和9月的每-也就是说,在任"08"或 …

javascript parseint

2
推荐指数
1
解决办法
2627
查看次数

Java Integer parseInt错误

我有以下问题:

我想将一些二进制字符串转换为整数:

eargb = Integer.parseInt(al + re + gre + blu, 2);
Run Code Online (Sandbox Code Playgroud)

但我得到以下例外.为什么?

java.lang.NumberFormatException: For input string: "11111111111000101000100111111010"
Run Code Online (Sandbox Code Playgroud)

java binary integer parseint

2
推荐指数
1
解决办法
981
查看次数

Java Integer.parseInt()不适用于大数字

我有以下简单的代码片段,用于检测给定的IPv4地址确实只有数值(即在剥离点后):

import edu.gcc.processing.exceptions.net.IPAddressNumericException;

//Get the IP address
  String address = "239.255.255.255";

//Check to see if this is a number      
  try {
    String IPNumbers = address.replace(".", "");
    Integer.parseInt(IPNumbers);            
  } catch (NumberFormatException e) {
    System.out.print(e.getMessage());
  }
Run Code Online (Sandbox Code Playgroud)

由于某种原因,NumberFormatException被解雇了,我得到这个错误:

For input string: "239255255255"
Run Code Online (Sandbox Code Playgroud)

有人可以帮我理解这个吗?该parseInt()方法适用于较小的数字,例如127001.

感谢您的时间.

java static-methods integer class parseint

2
推荐指数
3
解决办法
1万
查看次数

如何在JavaScript中使用parseInt()

我正在使用parseInt()获取一些大质数,但它正如预期的那样工作.例如,

parseInt("18014398241046527", 10); // Gives me 18014398241046528??
parseInt("18014398241046528", 10); // Gives me 18014398241046528
parseInt("18014398241046529", 10); // Still gives me 18014398241046528??
Run Code Online (Sandbox Code Playgroud)

我在Chrome版本20.0.1132.47和Firefox 12.0上测试了它们.这是因为我试图解析的数字太大了吗?

javascript parseint

2
推荐指数
1
解决办法
1万
查看次数

不知道为什么这段代码会抛出NumberFormatException.(有效输入)

所以我正在读这个:

10011011001;0110,1001,1001,0,10,11
Run Code Online (Sandbox Code Playgroud)

并在其上运行此代码:

        String[] parts = line.split(";");
        System.out.println("Part 1 = " + parts[0]);
        System.out.println("Part 2 = " + parts[1]);
        System.out.println(isNumeric(parts[0]));
        int original = Integer.parseInt(parts[0]);
        System.out.println("Original = " + original);
Run Code Online (Sandbox Code Playgroud)

这个isNumeric方法是我写的调试方法.

public static boolean isNumeric(String str) {
    for (char c : str.toCharArray()) {
        if (!Character.isDigit(c)) {
            return false;
        }
    }
    return true;
}
Run Code Online (Sandbox Code Playgroud)

输出:

Line = 10011011001;0110,1001,1001,0,10,11
Part 1 = 10011011001
Part 2 = 0110,1001,1001,0,10,11
true
Exception in thread "main" java.lang.NumberFormatException: For input string: "10011011001"
    at java.lang.NumberFormatException.forInputString(Unknown Source)
    at …
Run Code Online (Sandbox Code Playgroud)

java parseint

2
推荐指数
1
解决办法
354
查看次数

Java - Integer.parseInt()在radix = 2时不返回负数

据我所知,当使用2的补码,并且第一个数字为1时,则翻转数字并找到新字节的值并使其成为负数.javadoc表示Integer.parseInt(String s,radix) )和Integer.valueOf(String s,radix)都应该返回一个有符号的整数对象,但是当我用它测试它时:

System.out.println(Integer.parseInt("10000001", 2));

System.out.println(Integer.valueOf("10000001", 2));
Run Code Online (Sandbox Code Playgroud)

我明白了:

129

129
Run Code Online (Sandbox Code Playgroud)

即使我的计算得到我-127.有趣的是

System.out.println(Integer.parseInt("-10000001", 2));
Run Code Online (Sandbox Code Playgroud)

打印出来:

-129
Run Code Online (Sandbox Code Playgroud)

任何人都知道一个不同的java方法,如果你输入一个字节(和radix = 2),那么该方法将返回一个正确签名的值?

java binary parseint

2
推荐指数
1
解决办法
5563
查看次数

java.lang.NumberFormatException:无效的int:"3546504756",这个错误是什么意思?

我正在创建一个Android应用程序,我正在从文本文件中读取一些坐标.

我正在使用Integer.parseInt(xCoordinateStringFromFile)将X坐标转换为整数,并以与Y坐标相同的方式转换.

当我运行应用程序时,我在该行上出现错误,如下所示:

BridgeData data = new BridgeData(
    elements[0],
    elements[1],
    Integer.parseInt(elements[2]),
    Integer.parseInt(elements[3]),
    Integer.parseInt(elements[4]),
    new GeoPos(Integer.parseInt(elements[5].split(",")[0]), Integer.parseInt(elements[5].split(",")[1])),
    new GeoPos(Integer.parseInt(elements[6].split(",")[0]), Integer.parseInt(elements[6].split(",")[1])),
    Integer.parseInt(elements[7]),
    Integer.parseInt(elements[8])
);
Run Code Online (Sandbox Code Playgroud)

该变量elements是一个String数组,通过在每个上分割当前行来创建;.

"主要"错误是:

java.lang.NumberFormatException: Invalid int: "3546504756"
Run Code Online (Sandbox Code Playgroud)

我想知道这意味着什么,以及我如何解决它.

java android parseint numberformatexception

2
推荐指数
1
解决办法
7620
查看次数

在javascript中将字符串转换为整数或浮点数

如果我不知道变量是整数数字还是十进制数字,是否有一种简单的方法将字符串解析为整数或浮点数?

a = '2'; // => parse to integer
b = '2.1'; // => parse to float
c = '2.0'; // => parse to float
d = 'text'; // => don't parse
Run Code Online (Sandbox Code Playgroud)

编辑:似乎我的问题缺乏必要的上下文:我想做一些计算而不会丢失原始格式(原始格式因此意味着整数与浮点数.我不关心原始的小数位数):

例:

String containing the formatted number ('2') => parse to number (2.0) => do some calculations (2.0 + 1 = 3.0) => restore "original format" ('3' and not '3.0')

如果输入是2.0,那么想要的结果将是'3.0'(不是'3').

javascript parsefloat parseint

2
推荐指数
3
解决办法
3179
查看次数

java.lang.NumberFormatException:无效的int:"":错误

我正在做一些计算,但无法将字符串解析为int甚至在float.I搜索解决方案,我在某处读取它必须有一个空字符串,但我检查我的editText使用

log.v("Valuee",e1.getText().toString());
Run Code Online (Sandbox Code Playgroud)

并且它打印的值证明字符串不是空的..我缺少什么?

这是logcat

java.lang.RuntimeException:无法启动活动ComponentInfo {com.example.farrukh.bmi/com.example.farrukh.bmi.Main2Activity}:java.lang.NumberFormatException:无效的int:""在android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2195)在Android.app.ActivityThread.access $ 800(ActivityThread.java:135)的android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)android.app.ActivityThread $ H.handleMessage(ActivityThread) .java:1196)android.app.Handler.dispatchMessage(Handler.java:102)android.app.Looper.loop(Looper.java:136)android.app.ActivityThread.main(ActivityThread.java:5017) at java.lang.reflect.Method.invokeNative(Native Method)at java.lang.reflect.Method.invoke(Method.java:515)at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java: 779)在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)at dalvik.system.NativeStart.main(Native Method)引起:java.lang.NumberFormatException:无效的int:""at java.lang.Integer.invalidInt(Integer.java:137)在java.lang.Integer.parseInt(Integer.java:358)java.lang.Integer.parseInt(Integer.java:331)at com.example.farrukh .bmi.Main2Activity.onCreate(Main2Activity.java:31)位于android.app.A活动中的android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)上的android.app.Activity.performCreate(Activity.java:5231).在Android.app.ActivityThread.access $ 800(ActivityThread.java:135)的android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)上的performLaunchActivity(ActivityThread.java:2159)在android.app.ActivityThread $ H.handleMessage( ActivityThread.java:1196)在Android.app.A.运行时,Android.A.Tharead.main上的android.os.Handler.dispatchMessage(Handler.java:102)android.os.Looper.loop(Looper.java:136)(ActivityThread.java:5017) )at java.lang.reflect.Method.invokeNative(Native Method) 

这是MainActivity.java

 public class Main2Activity extends AppCompatActivity {

        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main2);

          final   Button b = (Button) findViewById(R.id.button);
          final   EditText e1 = (EditText) findViewById(R.id.editText2);
          final   TextView text = (TextView) findViewById(R.id.textView4);
          final  String height = e1.getText().toString();


          final int a = Integer.parseInt(height); //got error …
Run Code Online (Sandbox Code Playgroud)

java android parseint

2
推荐指数
2
解决办法
2万
查看次数

将字符串转换为整数时出错

嘿伙计我在Javascript中解析字符串有问题.我有一个很大的数字(162778063615164416)作为一个字符串.这就是不和谐的用户ID的样子.现在我正在尝试将其转换为数字,但它总是返回错误的值.

运行代码段以查看它.

var qs = 'querySelector',
    qsa = 'querySelectorAll';
document[qs]('input').addEventListener('input', event => {
  var val = event.target.value;
  document[qsa]('td')[0][qs]('input').value = parseInt(val);
  document[qsa]('td')[1][qs]('input').value = Number(val);
  document[qsa]('td')[2][qs]('input').value = eval(val);
})
Run Code Online (Sandbox Code Playgroud)
<table style="border: solid 1px">
  <thead>
    <tr>
      <th colspan="3"><input value="162778063615164416" style="width:98%; text-align: center"></th>
    </tr>
    <tr>
      <th>parseInt()</th>
      <th>Number()</th>
      <th>eval()</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><input id="parse" style="text-align: center" value="162778063615164400" disabled></td>
      <td><input id="number" style="text-align: center" value="162778063615164400" disabled></td>
      <td><input id="eval" style="text-align: center" value="162778063615164400" disabled></td>
    </tr>
  </tbody>
</table>
Run Code Online (Sandbox Code Playgroud)

我使用了三种不同的方法来做同样的事情,它们都返回了错误的值.输出值应与输入值相同.任何人都知道,如何将这个长度的字符串转换为数字?

我正在使用Discord API for Node.js来创建一个selfbot.用户向频道发送消息,并且程序应该读取用户ID以识别它应该回复的唯一一个人.我无法在程序代码中编写ID,因为它的动态:我想将它打包成.exe,其他人(不知道JavaScript或不想安装Node.js的人)可以使用它也可以发送嵌入物并做其他很酷的东西.

html javascript parseint node.js ecmascript-6

2
推荐指数
1
解决办法
138
查看次数