我有一个包含以下格式行的文件:
d 55 r:100:10000
Run Code Online (Sandbox Code Playgroud)
我想找到它55并将其解析为 int。我怎样才能做到这一点 ?我想让它成为可变空间证明。这意味着之间可能有或多或少的空间,但肯定会在d和之间。r
我试图从页面标题中提取一个从第 21 个字符开始的 数字 (721576481415319 78 ),如下所示:
parseInt(document.title.substring(21), 10);
Run Code Online (Sandbox Code Playgroud)
这将字符串返回为整数 721576481415319 80。我似乎无法弄清楚为什么它会改变最后两个数字。任何帮助,将不胜感激。
我将检查某个变量是字符串还是数字。如果值是字符串,我使用parseInt()返回NaN(非数字)的函数。但是,当我尝试在 if 语句中检查它时,它看起来"NaN"不能将输出视为要检查的有效条件。猜猜为什么?
function tsCalculate() {
var string = "Monday";
var number = 1;
Logger.log(string);
Logger.log(number);
Logger.log("String after parseInt: " + parseInt(string, 10));
Logger.log("Number after parseInt: " + parseInt(number, 10));
if ("NaN" == parseInt(string, 10))
{
Logger.log("doesn't work");
}
}
Run Code Online (Sandbox Code Playgroud) 我有一个对象数组,每个对象具有三个属性(年、总计、per_capita)。例子:
0: Object
per_capita: "125.8"
total: "1007.2"
year: "2009"
Run Code Online (Sandbox Code Playgroud)
这些属性是字符串,我想创建一个遍历数组并将它们转换为 int 的循环。我尝试了以下循环:
for (i=0; i<data.length; i++){
parseInt(data[i].year, 10)
parseInt(data[i].total, 10)
parseInt(data[i].per_capita, 10)
}
Run Code Online (Sandbox Code Playgroud)
但是,当我执行 typeof(data[0].total) 时,它说它是一个字符串。我在程序的后期遇到了问题,我认为这是因为无法正确计算值,因为它们的类型不正确。任何人都知道问题出在哪里?
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.Scanner;
public class MainProgram {
public static void main(String[] args ) throws IOException{
String seconds = " ";
Scanner sc2 = null;
try {
sc2 = new Scanner(new File("/Users/mohammadmuntasir/Downloads/customersfile.txt"));
} catch (FileNotFoundException e) {
e.printStackTrace();
}
boolean first = true;
while (sc2.hasNextLine()) {
Scanner s2 = new Scanner(sc2.nextLine());
while (s2.hasNext()) {
String s = s2.next();
if (first == true){
seconds = s;
first = false;
}
}
}
System.out.println(Integer.parseInt(seconds)); // causes ERROR?
} …Run Code Online (Sandbox Code Playgroud) 我正在 FreecodeCamp 上学习 JavaScript。而且,我的问题的解决方案并没有帮助我更多。我们必须过滤保存在 const 变量中的数组中的整数。
const realNumberArray = [4, 5.6, -9.8, 3.14, 42, 6, 8.34, -2];
const squareList = (arr) => {
"use strict";
const squaredIntegers = arr.filter( (num) => num > 0 && num % parseInt(num) === 0 ).map( (num) => Math.pow(num, 2) );
return squaredIntegers;
};
const squaredIntegers = squareList(realNumberArray);
console.log(squaredIntegers);
Run Code Online (Sandbox Code Playgroud)
我真的无法理解这部分 num % parseInt(num) === 0 ).map( (num) => Math.pow(num, 2) );
为什么使用 parseint() 方法和 Math.pow。有人可以解释我为什么吗?
谢谢。
我知道 Lodash 经常为 JavaScript 中已经存在的函数添加一些额外的检查或细节,但不清楚_.toNumber我不会使用parseInt.
我更喜欢仅在 Lodash 提供现有 JavaScript 函数所不具备的好处时才使用它,但在这种情况下我看不到任何好处。
我只是想知道为什么我的代码给我一个 NumberFormatException?
从堆栈溢出的其他帖子中,人们似乎对空格有问题,除了我的似乎根本没有这个问题。
package suop.space;
import java.util.BitSet;
public class ColourUtils {
public static short getAlpha(final int rgb) {
return (short) ((rgb >> 24) & 0xff);
}
public static short getRed(final int rgb) {
return (short) ((rgb & 0x00ff0000) >> 16);
}
public static short getGreen(final int rgb) {
return (short) ((rgb & 0x0000ff00) >> 8);
}
public static short getBlue(final int rgb) {
return (short) (rgb & 0x000000ff);
}
public static int getRGB(int alpha, int red, int green, int blue) …Run Code Online (Sandbox Code Playgroud) 由于某种原因,我无法获得字符串数值转换为整数我运行的错误:
Exception in thread "main" java.lang.NumberFormatException: For input string: "6327818260"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:495)
at java.lang.Integer.parseInt(Integer.java:527)
at MyDirectory.getsize(MyDirectory.java:18)
at a19010.main(a19010.java:79)
Run Code Online (Sandbox Code Playgroud)
Java结果:1
如果我的输入字符串是"6327818260",为什么它不能成为整数?我的代码是
public String getsize()
{
int intSize = Integer.parseInt(mySize);
int count = 0;
String dataType = "";
while (intSize > 1000)
{
intSize = intSize / 1000;
count++;
}
switch (count)
{
case 0:
dataType = "Bytes";
break;
case 1:
dataType = "KB";
break;
case 2:
dataType = "MB";
break;
case 3:
dataType = "GB";
break;
case 4:
dataType …Run Code Online (Sandbox Code Playgroud) var timeSplit = timeCaption.innerText.trim().split(' ');
Run Code Online (Sandbox Code Playgroud)
将产生一个数组 ["10:00", "–", "18:00"]
var startStr = timeSplit[0].split(':');
Run Code Online (Sandbox Code Playgroud)
将产生一个数组 ["10", "00"]
var res = startStr.map(parseInt);
Run Code Online (Sandbox Code Playgroud)
将产生一个数组 [10, NaN]
然而
var res = startStr.map(function (x) {
return parseInt(x);
});
Run Code Online (Sandbox Code Playgroud)
工作正常,将产生"预期"数组 [10, 0]
我希望每个字符串都传递给parseInt它返回正确的整数值(并且单独执行该操作也会产生正确的结果,就像工作代码一样).
我在这里错过了什么?
编辑:我自己投票决定关闭这个问题.很明显的错误.大家好!