Java 过一下基础
点我跳过黑哥的卑鄙广告行为,进入正文。
Java多线程系列更新中~
正式篇:
- Java多线程(一) 什么是线程
- Java多线程(二)关于多线程的CPU密集型和IO密集型这件事
- Java多线程(三)如何创建线程
- Java多线程(四)java中的Sleep方法
- Java多线程(五)线程的生命周期
番外篇(神TM番外篇):
Java是面向对象的语言 那么首先就要了解一下什么是面向过程和面向对象。
面向过程:关键在于“怎么做”。例如你想成为大侠,首先你需要断臂或者跌落悬崖,然后遇见雕兄或者白猿,然后再“重剑无锋”或者“九阳真经”等等。这里注重的是步骤,是一个逻辑上的过程,典型就是C语言中的函数调用,堆砌成一个程序。
面向对象:关键在于“抽出对象”。这样讲比较难以理解。举个例子,你是上帝,你想要谁成为大侠,那么你需要什么?你需要一个苦难系统,一个运气系统,一个人脉系统,一个后宫系统等等,像是这里苦难系统就是一个对象,给你提供各种各样的罪受,既可以是跌落悬崖,也可以是断臂,像是人脉系统,记录你的人际关系,人脉网,等等。 两者是不同的思考方式而已。
First Practice
我上去就是……就是一个”Hello world”。

前提:你已经安装好java和IDE,如eclipse,intelliJ,安装教程很容易搜索到。这里直接过了。 不管三七二十一,先敲出第一段程序,找下“手感”。
public class HelloWorld{
public static void main(String[] args){
System.out.println(“Hello World”);
}
}
其中,HelloWorld是一个公共类,那么它的文件名必然是HelloWorld.java,也就是公共类名和文件名需要保持一致。main函数则是程序的入口地址,System.out.println则是打印,其中println可以理解为print\n,也就是会在结尾自动换行。
基础数据类型

这里需要注意的一点就是Java的char类型是16位的。


还有就是float初始化的时候,java小数默认是double类型,float需要在小数后面加一个f,如3.14f。
循环结构
while(不帅&&没钱){
找不到女朋友; //找到女票是不可能的,这辈子都不可能找到女票的
}
条件结构
if(断臂为真){
成为大侠;
}else if(跌落悬崖){
有望成为大侠;
}else{
成为中侠;
}
Switch case
switch(游戏中干掉的人数){
case 0: emmm..;
break;
case 1: kill!
break;
case 2:double kill!
break;
default: legendary;
}
数组
默认数组声明方法:
如,int[] array;
创建数组方法:
array = new int[10];
输入数据
开始我们打印输出了hello world,那么如何输入呢?
Scanner类,使用方法:
Import java.util.Scanner;
省略号
以下内容在main函数里
Scanner scan = new Scanner(System.in); //哈哈,没错,都有System.out了,自然有System.in
if(scan.hasNext()){
String str = scan.next();
System.out.println(“输入数据为:”+str);
}
scan.close();
Java 过一下基础的更多相关文章
- 如何夯实(Java)编程基础,并深入学习和提高
如何夯实(Java)编程基础,并深入学习和提高? 240赞同反对,不会显示你的姓名 匿名用户 240 人赞同 多学习...网上自学的学习网站很多,见以下榜单~一.汇总榜单: 公开课_学习网站导航 收录 ...
- Java开发的基础条件:
------------Java开发的基础条件:Java相关的基础+对编程的自己的理解+调试代码+自己的坚持 一定要谦逊,不人云亦云,不去妄言某一门语言或技术好或坏!不是哪门技术有问题,而是(不会用才 ...
- Java多线程系列--“基础篇”11之 生产消费者问题
概要 本章,会对“生产/消费者问题”进行讨论.涉及到的内容包括:1. 生产/消费者模型2. 生产/消费者实现 转载请注明出处:http://www.cnblogs.com/skywang12345/p ...
- Java多线程系列--“基础篇”04之 synchronized关键字
概要 本章,会对synchronized关键字进行介绍.涉及到的内容包括:1. synchronized原理2. synchronized基本规则3. synchronized方法 和 synchro ...
- Java多线程系列--“基础篇”02之 常用的实现多线程的两种方式
概要 本章,我们学习“常用的实现多线程的2种方式”:Thread 和 Runnable.之所以说是常用的,是因为通过还可以通过java.util.concurrent包中的线程池来实现多线程.关于线程 ...
- Java多线程系列--“基础篇”03之 Thread中start()和run()的区别
概要 Thread类包含start()和run()方法,它们的区别是什么?本章将对此作出解答.本章内容包括:start() 和 run()的区别说明start() 和 run()的区别示例start( ...
- Java多线程系列--“基础篇”05之 线程等待与唤醒
概要 本章,会对线程等待/唤醒方法进行介绍.涉及到的内容包括:1. wait(), notify(), notifyAll()等方法介绍2. wait()和notify()3. wait(long t ...
- Java多线程系列--“基础篇”06之 线程让步
概要 本章,会对Thread中的线程让步方法yield()进行介绍.涉及到的内容包括:1. yield()介绍2. yield()示例3. yield() 与 wait()的比较 转载请注明出处:ht ...
- Java多线程系列--“基础篇”07之 线程休眠
概要 本章,会对Thread中sleep()方法进行介绍.涉及到的内容包括:1. sleep()介绍2. sleep()示例3. sleep() 与 wait()的比较 转载请注明出处:http:// ...
- Java多线程系列--“基础篇”08之 join()
概要 本章,会对Thread中join()方法进行介绍.涉及到的内容包括:1. join()介绍2. join()源码分析(基于JDK1.7.0_40)3. join()示例 转载请注明出处:http ...
随机推荐
- 启动sql2012时出现Cannot find one or more components.Please reinstall the application
①在运行中输入regedit.exe,启动注册表工具 ②找到注册表中的此处路径“HKEY_CURRENT_USER\Software\Microsoft\SQL Server Management S ...
- 用Vue.js搭建一个小说阅读网站
目录 1.简介 2.如何使用vue.js 3.部署api服务器 4.vue.js路由配置 5.实现页面加载数据 6.测试vue项目 7.在正式环境部署 8.Vue前端代码下载 1.简介 这是一个使用v ...
- 如何去掉C#字符串中的所有空格
字符串行数Trim()可以去掉字符串前后的空格,如: C# Code string myString = " this is a test "; Console.WriteLi ...
- JVM-Ubuntu18.04.1下编译OpenJDK8
近期开始学习JVM,看的是周老师的<深入理解Java虚拟机>,打算先自己编译个JDK来提升对JVM的兴趣.本文分三部分来描述编译OpenJDK的过程,分别是编译前准备工作.构建编译环境.进 ...
- 28-30 js 文本全选
要点:使用select(); 上代码: if (e.keyCode === 27){ document.getElementById('input').select() } //当点击键盘esc键时候 ...
- 谈谈你对 Java 平台的理解
声明 本篇所涉及的提问,正文的知识点,全都来自于杨晓峰的<Java核心技术36讲>,当然,我并不会全文照搬过来,毕竟这是付费的课程,应该会涉及到侵权之类的问题. 所以,本篇正文中的知识点, ...
- js替换字符串中特殊字符
var reg=/\\|\/|\?|\?|\*|\"|\“|\”|\'|\‘|\’|\<|\>|\{|\}|\[|\]|\[|\]|\:|\:|\.|\^|\$|\!|\~|\` ...
- 如何用ABP框架快速完成项目(7) - 用ABP一个人快速完成项目(3) - 通过微服务模式而不是盖楼式来避免难度升级和奥卡姆剃刀原理
这节文章十分重要!十分重要!十分重要! 很多同学在使用ABP的过程中遇到很多问题, 花费了很多时间和精力都还无法解决, 就是卡在这节文章这里. Talk is cheap, just show ...
- C# SharpMap的简单使用
本文是利用ShapMap实现GIS的简单应用的小例子,以供学习分享使用.关于SharpMap的说明,网上大多是以ShapeFile为例进行简单的说明,就连官网上的例子也不多.本文是自己参考了源代码进行 ...
- LeetCode题解之Sum Root to Leaf Numbers
1.题目描述 2.问题分析 记录所有路径上的值,然后转换为int求和. 3.代码 vector<string> s; int sumNumbers(TreeNode* root) { tr ...