javachar是int
1. 關於java char 轉化為int的問題
char和int是可以互換的,字元『2』在ASII中是50(十進制的int),t+s是將s換為int計算的,也就是50了
2. java中char類型和int類型相加結果是char類型還是int類型
假設程序語言是C/C++。
一般而言結果是int類型。如果在某個編譯器上char被實現為unsigned char且長度與int相同,則結果會是unsigned int類型。
執行算術運算,首先對運算對象進行整型提升。所謂整型提升,即按如下規則類型轉換:
對於bool、(signed/unsigned) char、(unsigned) short等類型來說,只要它們所有可能的值都能存在int里,它們就會提升成int類型;否則,提升成unsigned int類型。例如,兩個signed char相加,兩個signed char都會提升成int。
較大的char類型(wchar_t、char16_t、char32_t)提升成int、unsigned int、long、unsigned long、long long和unsigned long long中最小的能容納原類型所有可能的值的類型。
整型提升後,如果結果類型匹配,無需進一步的轉換。如果兩個(提升後的)運算對象都是帶符號的,或者都是無符號的,則小類型轉換成大類型。例如,int與long相加,結果是long。
如果一個運算對象是無符號類型,另一個運算對象是帶符號類型,又分兩種情況:
無符號的類型不小於帶符號的類型(比如unsigned long與int),此時帶符號的轉換成無符號的。例如原題中若char被實現為unsigned char且長度與int相同,則首先執行整型提升char被轉換為unsigned int(int不能容納char的所有可能值),然後int與unsigned int相加,int被轉換為unsigned int,最終結果為unsigned int。
無符號的類型小於帶符號的類型,此時結果依賴於機器。如果無符號類型的所有值都能存在該帶符號類型中,則無符號的轉換成帶符號的,否則帶符號的轉換成無符號的。
3. java中的int與char
有兩種轉換方法:
一種是自動轉換,如char c = 97,會自動的將int類型的96轉換成char的『a』
另一種是強制類型轉換,如int i = 97,char c = (char)i ,這樣做了之後,char的值也是『a』
為什麼是a呢?因為字元『a』對應的ASCII值是97.
自動轉換一般是用於大的類型向小的類型轉換,也叫窄化轉換
強制類型轉換一般是用於小的類型向大的類型轉換,也叫擴展轉換
4. java中char類型和int類型相加結果是char類型還是int類型
char類型是16位的,底層採用unicode編碼保存.
char類型是可以直接賦值給int類型的,因為是16位到32位低到高.
舉個例子比如int
i='1';列印i的值是49.
char類型跟int類型進行計算的時候會自動轉換為int類型
比如system.out.println('1'+1);輸出結果是50.
char類型的'='換成int是61
5. java中的char類型是字元型,它屬於數值型么
字元類型也屬於是數值類型,可以與int等數值類型進行數學計算或進行轉換。這是因 為字元類型在計算機中保存的是Unicode編碼,雙位元組Unicode的存儲范圍在 \u0000~\uFFFF,所以char類型取值范圍0~2的16次方 -1。
6. Java中的char型怎樣轉換成int型
1、定義char型字元
charr='a';
2、通過int強轉成int
intk=(int)r;//強轉成int型,就是字元所表示的數字值
7. java int 與char
System.out是一個PrintStream的實例。打開Java源代碼查java.io.PrintStream 其中定義了 public void println(char[] chars) { println(new String(chars, 0, chars.length)); } 拋出NullPointerException 但是沒有定義參數為int[],所以System.out.println(arr[0]);會調用 public void println(Object o) { println(String.valueOf(o)); } 不會拋出NullPointerException
8. java怎麼把char 變成int
直接強制類型轉換就可以了,(int)x,x是你想轉換為int型的char型變數。或者直接把一個char型變數賦值給一個int型變數也可以。
9. java中int怎樣轉換成char
java將int類型的數字轉換成char型,主要是通過強制類型轉換,如下代碼:
public class Int2CharDemo { public static void main(String[] args) { // 將int類型數字8轉換為char類型數字8
int num1 = 8;
char ch1 = (char) (num1 + 48);
System.out.println("ch1 = " + ch1); // 將char類型數字8轉換為int類型數字8
// 方法一:
Character ch2 = '8'; // char是基本數據類型,Character是其包裝類型。
int num2 = Integer.parseInt(ch2.toString());
System.out.println("num2 = " + num2);
// 方法二:
char ch3 = '8';
int num3 = ch3 - 48;
System.out.println("num3 = " + num3); }
(9)javachar是int擴展閱讀:
當編輯並運行一個Java程序時,需要同時涉及到這四種方面。使用文字編輯軟體(例如記事本、寫字板、UltraEdit等)或集成開發環境(Eclipse、MyEclipse等)在Java源文件中定義不同的類。
C語言中如int、long、short等不指定signed或unsigned時都默認為signed,但char在標准中不指定為signed或unsigned,編譯器可以編譯為帶符號的,也可以編譯為不帶符號的。
Java看起來設計得很像C++,但是為了使語言小和容易熟悉,設計者們把C++語言中許多可用的特徵去掉了,這些特徵是一般程序員很少使用的。例如,Java不支持go to語句,代之以提供break和continue語句以及異常處理。
Java還剔除了C++的操作符過載(overload)和多繼承特徵,並且不使用主文件,免去了預處理程序。因為Java沒有結構,數組和串都是對象,所以不需要指針。Java能夠自動處理對象的引用和間接引用,實現自動的無用單元收集,使用戶不必為存儲管理問題煩惱,能更多的時間和精力花在研發上。
10. java 中char為什麼能轉int
因為電腦不識別字元,他只認識二進制數字,所以我們用整數來代替字元,比如用65表示'A',也就是ASCII碼,所以當你把'A'轉換為int的時候可以轉,而且結果是65.