首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Java中将char转换为int?

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

Stack Overflow用户
提问于 2017-09-21 20:12:12
回答 3查看 225.3K关注 0票数 61

(我是个Java编程新手)

例如,我有:

代码语言:javascript
复制
char x = '9';

我需要得到撇号中的数字,数字9本身。我试着做了下面的事情,

代码语言:javascript
复制
char x = 9;
int y = (int)(x);

但它并没有起作用。

那么我应该怎么做才能得到撇号中的数字呢?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-09-21 20:14:30

ASCII表的排列方式是:字符'9'的值比'0'的值大9;字符'8'的值比'0'的值大8;依此类推。

所以你可以通过减去'0'得到十进制数字字符的int值。

代码语言:javascript
复制
char x = '9';
int y = x - '0'; // gives the int value 9
票数 135
EN

Stack Overflow用户

发布于 2017-09-21 20:23:22

您可以使用Character类中的静态方法从char中获取数值。

代码语言:javascript
复制
char x = '9';

if (Character.isDigit(x)) { // Determines if the specified character is a digit.
    int y = Character.getNumericValue(x); //Returns the int value that the 
                                          //specified Unicode character represents.
    System.out.println(y);
}
票数 25
EN

Stack Overflow用户

发布于 2017-09-21 20:22:02

如果想要获取字符的ASCII值,或者只是将其转换为int类型,则需要从char类型转换为int类型。

选角是什么?强制转换是当我们显式地从一个primitve数据类型或一个类转换到另一个数据类型时。下面是一个简短的示例。

代码语言:javascript
复制
public class char_to_int
{
  public static void main(String args[])
  {
       char myChar = 'a';
       int  i = (int) myChar; // cast from a char to an int
       System.out.println ("ASCII value - " + i);
  }

在本例中,我们有一个字符('a'),并将其转换为整数。输出这个整数会得到'a‘的ASCII值。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46343616

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档