1、基本输出语句

/*
* java
* 多行注释
*/
//java单行注释
public class _01_HelloWorld {
public static void main(String[] args) {// main方法
System.out.print("Hello Java!");// 使用print,最后无换行
System.out.println("你好 Java!");// 使用println,最后有换行
System.out.println(123 + 321);// 使用数字
System.out.println('S');// 使用字符
System.out.println("123\t456\tC:\\myfiles\\123.txt");// 使用转义字符
System.out.println("十进制的10是"+10+"。");// 拼接字符串和数字
System.out.println("八进制的10是"+010+"。");// 拼接字符串和数字
System.out.println("16进制的10是"+0x10+"。");// 拼接字符串和数字
System.out.println("16进制的F是"+0xF+"。");// 拼接字符串和数字
}
}

2、各种类型的变量

package Java_basic;

public class _02_DataType {
public static void main(String[] args) {
//大范围数不能赋值给小范围的,如double不能赋值给int
boolean boo = true;
char ch = 'a'; // 布尔型
byte by = 32; // 字节型,-128~127
short sh = 66; // 短整型,2个字节,-32768~32767
int i = 44; // 整型,4个字节,-2147483648~2147483647
long lo = 9; // 长整型,8个字节,-9223372036854775808~9223372036854775807
float flo = 4; // 4字节
double dou = 5.6; // 8字节
System.out.println(boo);
System.out.println(ch);
System.out.println(by);
System.out.println(sh);
System.out.println(i);
System.out.println(lo);
System.out.println(flo);
System.out.println(dou);
}
}

3、从键盘读取字符并输出

3.1 程序

import java.io.*;//库

public class _03_KeybordInput {
public static void main(String[] args) {
// 流对象
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
// 调用流对象的方法,将读取的值赋给str
String str = "INI";
try {
str = br.readLine();
} catch (IOException e) {
// ignore,忽略异常
}
// 输出str
System.out.println(str);
}
}

3.2 报错&解决

// 流对象
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
// 调用流对象的方法,将读取的值赋给str
String str = br.readLine();

报错:

Unhandled exception type IOException

原因:

没有异常处理

解决:

String str;
try {
str = br.readLine();
} catch (IOException e) {
// ignore,忽略异常
}

4、从键盘读取数值

将刚才读取的字符串str转换为int型变量num

import java.io.*;//库

public class _03_KeybordInput {
public static void main(String[] args) {
// 流对象
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
// 调用流对象的方法,将读取的值赋给str
String str = "INI";
try {
str = br.readLine();
} catch (IOException e) {
// ignore,忽略异常
}
//将str转换为数字
int num=Integer.parseInt(str);
// 输出一些结果
System.out.println("str="+str);
System.out.println("num="+num); }
}

5、读入多个数值

//输入多个数值,计算
//必须以回车分割输入的数字,否则异常
String str1 = "str1";
String str2 = "str2";
try {
str1 = br.readLine();
} catch (IOException e) {
// ignore,忽略异常
}
try {
str2 = br.readLine();
} catch (IOException e) {
// ignore,忽略异常
}
int num1 = Integer.parseInt(str1);
int num2 = Integer.parseInt(str2);
int num3 = num1 + num2;
// 输出一些结果
System.out.println("num1=" + num1);
System.out.println("num2=" + num2);
System.out.println("num1+num2=" + num3);

6、运算符及计算

/*
* 操作符:operator
* 操作对象:operand
* 四则运算:左结合
* 赋值运算:右结合
*/
public class _04_Expression {
public static void main(String[] args) {
System.out.println("5+6=" + (5 + 6));
System.out.println("5/6=" + (5 / 6) + "整数间除法默认向下取整");
int a = 0;
System.out.println("a++=" + a++);
System.out.println("a++=" + a++);
System.out.println("a++=" + a++);
System.out.println("a++=" + (a * 2 + 5));
System.out.println("a * (2 + 5)=" + (a * (2 + 5)));
System.out.println("a=" + a);
System.out.println("(a = a * 2 + 5) =" + (a = a * 2 + 5));
System.out.println("a=" + a);
// 数据类型转换
int intnum = 5;
double dounum = intnum;// 小的数据类型可以赋值给大的类型
System.out.println("intnum=" + intnum);
System.out.println("dounum=" + dounum);
double dounum1 = 5.5;// 大的数据类型不可以赋值给小的类型
// int intnum1=dounum1;// 报错:Type mismatch: cannot convert from double to int
// 不同数据类型间的计算:会把小的转成大的
int d = 2;
double pi = 3.14;
System.out.println("直径是" + d + "cm的圆。");
System.out.println("周长是" + (pi * d) + "cm。");
System.out.println("面积是" + (pi * d * d / 4) + "cm。");
// 强制类型转换符
double dounum2 = 9.9;
System.out.println("dounum2 = " + dounum2);
System.out.println("(int)dounum2 = " + (int) dounum2); } }

参考:Easy Java (第7版) (日)高桥麻奈

【Java-01-1】java基础-基本语法(1)(基本输入输出,计算)的更多相关文章

  1. 从零开始学JAVA(01)-JAVA开发环境安装

    写在前面: 本人没有JAVA基础(包括语法.开发环境),未使用开发工具开发过程序,如果有不对或误导的地方,欢迎指正. 本系列所有文章使用Eclipse,JDK是Version 7 Update 51, ...

  2. 【Java基础】【01初识Java】

    01.01_计算机基础知识(计算机概述)(了解) A:什么是计算机?计算机在生活中的应用举例 计算机(Computer)全称:电子计算机,俗称电脑.是一种能够按照程序运行,自动.高速处理海量数据的现代 ...

  3. 075 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 07 综合案例-数组移位-主方法功能4的实现

    075 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 07 综合案例-数组移位-主方法功能4的实现 本文知识点:综合案例-数组移位-主方法功能4的实现 说明:因为 ...

  4. 074 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 06 综合案例-数组移位-主方法功能3的实现

    074 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 06 综合案例-数组移位-主方法功能3的实现 本文知识点:综合案例-数组移位-主方法功能3的实现 说明:因为 ...

  5. 073 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 05 综合案例-数组移位-主方法功能1和2的实现

    073 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 05 综合案例-数组移位-主方法功能1和2的实现 本文知识点:综合案例-数组移位-主方法功能1和2的实现 说 ...

  6. 072 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 04 综合案例-数组移位-在指定位置处插入数据方法

    072 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 04 综合案例-数组移位-在指定位置处插入数据方法 本文知识点:综合案例-数组移位-在指定位置处插入数据方法 ...

  7. 071 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 03 综合案例-数组移位-显示数组当中所有元素的的方法

    071 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 03 综合案例-数组移位-显示数组当中所有元素的的方法 本文知识点:综合案例-数组移位-显示数组当中所有元素 ...

  8. 070 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 02 综合案例-数组移位-从键盘接收数据

    070 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 02 综合案例-数组移位-从键盘接收数据 本文知识点:综合案例-数组移位-从键盘接收数据 说明:因为时间紧张 ...

  9. 069 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 01 综合案例-数组移位-案例需求

    069 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 01 综合案例-数组移位-案例需求 本文知识点:综合案例-数组移位-案例需求 说明:因为时间紧张,本人写博客 ...

  10. 068 01 Android 零基础入门 01 Java基础语法 08 Java方法 06 参数传递问题——基本数据类型传值

    068 01 Android 零基础入门 01 Java基础语法 08 Java方法 06 参数传递问题--基本数据类型传值 本文知识点:参数传递问题--基本数据类型传值 说明:因为时间紧张,本人写博 ...

随机推荐

  1. EndNote设置导出参考文献格式为中文国标GBT7714

    笔者使用的版本是最新的EndNote 20,其他版本大同小异. 依次打开:Tools -> Output Styles -> Open Style Manager.其他版本可能有差异,只要 ...

  2. 图解B树及C#实现(1)

    目录 前言 索引原理 局部性(Locality) 数据的局部性 内存存储和磁盘存储 磁盘存储适合的索引结构 B树简介 定义 B树中数据的有序性 用C#定义数据结构 插入数据的过程 分裂:新节点诞生的唯 ...

  3. 【转载】七个人生工具,终生受益 | SWOT、PDCA、6W2H、SMART、WBS、时间管理、二八原则

    人类历史原本就是一部追求自身平衡的奋斗史,本文介绍七个人生工具:SWOT.PDCA.6W2H.SMART.WBS.时间管理.二八原则 . 1.SWOT分析法 Strengths:优势 Weakness ...

  4. Ng-Matero v15 正式发布

    前言 Angular 按照既定的发版计划在 11 月中旬发布了 v15 版本.推迟了一个月(几乎每个版本都是这个节奏),ng-matero 也终于更新到了 v15.其实 ng-matero 本身的更新 ...

  5. 那些年我们用过的组件-结构化日志组件 Serilog

    什么是结构化日志 我们记录日志惯常使用 log4j2.NLog 等日志组件,这些组件提供了输出到多种终端的能力,但是大部分时候我们选择将日志输出到操作系统的文件系统中,为什么呢?至少有一部分原因是记录 ...

  6. 真正“搞”懂HTTP协议07之队头阻塞真的很烦人

    这一篇文章,我们核心要聊的事情就是HTTP的对头阻塞问题,因为HTTP的核心改进其实就是在解决HTTP的队头阻塞.所以,我们会讲的理论多一些,而实践其实很少,要学习的头字段也只有一个,我会在最开始就讲 ...

  7. py教学 之字符串处理·····

    访问字符串中的值 Python 不支持单字符类型,单字符在 Python 中也是作为一个字符串使用. Python 访问子字符串,可以使用方括号 [] 来截取字符串,字符串的截取的语法格式如下: 变量 ...

  8. flutter报错The type of the function literal can't be inferred because the literal has a block as its body.A value of type 'String?' can't be assigned to a variable of type 'String'.

    flutter有一些报错如下 The type of the function literal can't be inferred because the literal has a block as ...

  9. vue基础之keep-alvie保持历史页面数据不变,切换页面后数据不变keep-alvie

    1:路由配置文件设置 { path: '/MenuM', component: Layout, redirect: '/MenuM', children: [ { path: 'MenuM', nam ...

  10. Grafana 系列文章(三):Tempo-使用 HTTP 推送 Spans

    ️URL: https://grafana.com/docs/tempo/latest/api_docs/pushing-spans-with-http/ Description: 有时,使用追踪系统 ...