Java:基本语法
Java语言是由类和对象组成的,其对象和类又是由变量和方法组成,而方法,又包含了语句和表达式。
1. 变量
Java语言提供了两种变量:成员变量和局部变量
- 成员变量:是在方法体外的类中声明和定义的,可以被自动初始化
- 局部变量:是在方法中声明和定义的,不能被自动初始化,方法执行完,局部变量也就不存在了
在Java中,使用任何变量之前都需要对变量进行创建,创建变量实际上就是对变量的声明过程,需要指明变量类型和变量名。
int a;
boolean b;
char c = 'A';
public class DataDemo {
int a;
public void test()
{
boolean b=false;
char c='\0';
}
public static void main(String[] args) {
float f=0;
String s=null;
}
}
成员变量对应的自动初始化值:
| 类型变量 | 初始值 |
| 字节型 byte | 0 |
| 整型 int | 0 |
| 单精度型 fload | 0.0f |
| 字符型 char | '\u0000' |
| 字符串型 String | null |
| 短整型 short | 0 |
| 长整型 long | 0L |
| 双精度型 double | 0.0d |
| 布尔型 boolean | false |
2. 4类基本数据类型
Java数据类型:
- 布尔型
- 整型: 整型,短整型,长整型,字节型
- 字符型
- 浮点型:单精度型,双精度型
String不是基本数据类型。String类所定义的变量是一个对象,而不是简单类型。与简单类型不同,类的对象含有自己的方法,是复杂类型。
布尔型(boolean),用于逻辑条件判断,只含两个值,真(true)、假(false)。需要注意的是,在C语言中,1和true等价,0和false等价,但在Java中,boolean变量的取值只可能是true或false。
3. 算数运算符
取模运算(%)中,若操作数包含正负数,则结果的正负号与左操作数一致。 例如: -8%3=-2, 8%(-3)=2
4. switch语句
public class SwitchTest {
public static void main(String[] args) {
int student[] = {95, 85, 75, 65, 55};
for(int i=0; i<5; i++)
{
switch(student[i]/10)
{
case 9:
System.out.println("Student" + i + "'s result is A!");
break;
case 8:
System.out.println("Student" + i + "'s result is B!");
break;
case 7:
System.out.println("Student" + i + "'s result is C!");
break;
case 6:
System.out.println("Student" + i + "'s result is D!");
break;
default:
System.out.println("Student" + i + "'s result is F!");
}
}
}
}
Student0's result is A!
Student1's result is B!
Student2's result is C!
Student3's result is D!
Student4's result is F!
public class SwitchTest {
public static void main(String[] args) {
int student[] = {95, 85, 75, 65, 55};
for(int i=0; i<5; i++)
{
switch(student[i]/10)
{
case 9:
System.out.println("Student" + i + "'s result is A!");
case 8:
System.out.println("Student" + i + "'s result is B!");
case 7:
System.out.println("Student" + i + "'s result is C!");
case 6:
System.out.println("Student" + i + "'s result is D!");
default:
System.out.println("Student" + i + "'s result is F!");
}
}
}
}
Student0's result is A!
Student0's result is B!
Student0's result is C!
Student0's result is D!
Student0's result is F!
Student1's result is B!
Student1's result is C!
Student1's result is D!
Student1's result is F!
Student2's result is C!
Student2's result is D!
Student2's result is F!
Student3's result is D!
Student3's result is F!
Student4's result is F!
注意:当已经进入一个case分支,同时这个case语句中并没有使用break,那么以后的每个case都不用匹配就可以直接进入,知道遇到break为止。
5. 实战练习
- 使用for循环来实现对1~99之间奇数的求和
import javax.swing.JOptionPane; public class OddSum { public static void main(String[] args) {
int sum=0;
for(int i=1; i<=99; i++)
{
if(i%2!=0)
{
sum=sum+i;
}
}
JOptionPane.showMessageDialog(null, "The sum is "+ sum, "Total Even Integer from 1 to 99", JOptionPane.INFORMATION_MESSAGE); } }
- switch语句与for循环结合
public class TestSwitch
{
int i=0, w=0;
public TestSwitch()
{
for(; i<=5; i++)
{
switch (i)
{
case 3: w+=1;
case 0: w+=1;
case 1: w+=1; continue;
case 2: w+=1;
case 4: w+=1;
default:
w+=2;
}
System.out.print(" "+w);
} } public static void main(String[] args)
{
TestSwitch testSwitch=new TestSwitch();
} }7 13 15
- 利用多重for循环,用“*”绘制一个直角三角形,并使用消息对话框显示出来
import javax.swing.JOptionPane;
public class MultipleLoop1 {
public static void main(String[] args) {
String out="";
loop:
for(int row=1; row<=5; row++)
{
out+="\n";
for(int column=1; column<+6; column++)
{
if(column>row) continue loop;
out+="* ";
}
}
JOptionPane.showMessageDialog(null, out, "Test multiply loop 1", JOptionPane.INFORMATION_MESSAGE);
}
}

- 用“*”输出一个菱形并显示
public class MultiplyLoop2 {
public static void main(String[] args) {
MultiplyLoop2 multiplyLoop2=new MultiplyLoop2();
multiplyLoop2.print(11);
}
public void print(int n)
{
int temp=0;
for(int i=0; i< n; i++)
{
for(int j=0; j<Math.abs(n/2-i);j++)
{
System.out.print(" ");
}
if(i<=n/2)
{
temp=i;
}
else
{
temp=n-i-1;
}
for(int k=0; k<(2*temp +1); k++)
{
System.out.print("*");
}
System.out.println();
}
}
}

Java:基本语法的更多相关文章
- 【转】详解Java正则表达式语法
(转自: http://www.jb51.net/article/76354.htm) 这篇文章主要介绍了Java正则表达式语法,包括常用正则表达式.匹配验证-验证Email是否正确以及字符串中查询字 ...
- C++与Java的语法区别
C++与Java的语法区别 首先,两个大的不同是主函数和怎样编译的不同,接下来是许多小的区别. main 函数C++//自由浮动的函数int main( int argc, char* argv[]) ...
- Atitti.java exp ast java表达式语法ast构造器
Atitti.java exp ast java表达式语法ast构造器 /atiplat_cms/src/com/attilax/lang/AstParser.java 原理 分割tokens_sli ...
- java面向对象编程——第二章 java基础语法
第二章 java基础语法 1. java关键字 abstract boolean break byte case catch char class const continue default do ...
- JAVA正则表达式语法大全
[正则表达式]文本框输入内容控制 整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$ 只能输入数字:"^[0-9]*$". 只能输入n位的数字:"^\d{n ...
- java基础语法笔记
这段时间看了一些java,急了一些笔记,记下一遍以后复习用! 2016-07-24 15:12:40 java很多语法都跟C#类似,下面列举一些不同的地方******注意***** java中的系统方 ...
- Java基础语法(下篇)
Java基础语法(下篇) 内容概要: (1)函数的定义 (2)函数的特点 (3)函数的应用 (4)函数的重载 ...
- Java基础语法(上篇)
Java基础语法(上篇) 知识概要: (1)关键字的表示与规范 (2)标示符 (3)注释 (4 ...
- java——基础语法
java基础语法 1.关键字:java赋予特殊含义的单词. 2.标识符:程序中开发人员自定义的名词,例如:类名,函数名,变量名(注意事项:①不能以阿拉伯数字开头②不能采用关键字). 3.常量:固定的数 ...
- java基础语法(二)--单列模式
java基础语法(二)--单列模式 /** * 功能:单列模式 * @author Administrator * */ public class SingletonTest { public sta ...
随机推荐
- nodejs cluster 学习记录
最近在使用 egg.js ,这个框架提供多进程管理机制 我们知道 JavaScript 代码是运行在单线程上的,换句话说一个 Node.js 进程只能运行在一个 CPU 上.如何榨干服务器资源,利用上 ...
- 在Windows下搭建Android开发环境
随着移动互联网的迅速发展,前端的概念已发生很大的变化,已不仅仅局限在网页端.而Android系统作为智能机市场的老大,作为前端开发工程师, 非常有必要了解和学习.但面对众多学习资料,站在前端开发工程师 ...
- xxx was built without full bitcode" 编译错误解决
xxx was built without full bitcode" 编译错误解决 iOS 打包上线 All object files and libraries for bitcode ...
- sws_scale函数的用法-具体应用
移植ffmpeg过程中,遇到swscale的用法问题,所以查到这篇文章.文章虽然已经过去很长时间,但是还有颇多可以借鉴之处.谢谢“咕咕鐘". 转自:http://guguclock.blog ...
- Asp.Net页面生命周期【转载,地址:http://www.cnblogs.com/xhwy/archive/2012/05/20/2510178.html】
一.什么是Asp.Net页面生命周期 当我们在浏览器地址栏中输入网址,回车查看页面时,这时会向服务器端(IIS)发送一个request请求,服务器就会判断发送过来的请求页面, 完全识别 HTTP 页 ...
- ACM学习历程—HDU 5536 Chip Factory(xor && 字典树)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5536 题目大意是给了一个序列,求(si+sj)^sk的最大值. 首先n有1000,暴力理论上是不行的. ...
- Django 发布
0.完成好 Django 项目,做部署前准备,比如 settings.py 改 debug 什么的. 1.用 Gunicorn 部署 Django 项目,相当于部署 Java Web 的 Tomcat ...
- Poj 1338 Ugly Numbers(数学推导)
一.题目大意 本题要求写出前1500个仅能被2,3,5整除的数. 二.题解 最初的想法是从1开始检验该数是否只能被2,3,5整除,方法是这样的,对于一个数,如果它能被2整除,就除以2,如果它能被3整除 ...
- 忘记mysql密码,但是可以用navicat修改MySQL密码
1.首先:要知道你的账户 2.打开可以连接的navicat,在查询语句页面,输入以下操作,就可以修改成功密码了
- [原]toString()方法的复写作用, 以及打印集合.
java中的每个类的根都是Object的子类. 必然有拥有了Object的所有方法. 在package java.lang.Object源码中: public String toString() { ...