初学JAVA编程
⑴ java编程有哪几本书比较适合初学者
对于Java的初学者来说,如果找一本比较合适的入门教材的话,完整地介绍Java的 语法、面向对象和主要的API核心库等知识,那将对学习起到相当的促进作用。 我个人认为,一些经典的国外教材确实值得推崇,首先推荐要看的是《21天学通Ja va 2》、《循序渐进Java 2教程》、《Java2从入门到精通》等书看起来比较浅显易 懂,将Java的基本只是都涉及到了,使你在很短的时间内掌握Java的基本内容。 看完这这本书之一以后,你就想对Java全面深入的学习,现在向你推荐《Java大学 教程》、《Java 2编程指南》等书,这几本书对Java的语法、面向对象的知识和AP I函数库等介绍的比较详尽。让你能够比较熟练的使用Java来编程,解决一般的问题 。 最后向大家推荐的是《Java2核心技术》,这本书主要讲述了Java的核心技术也是J ava的难点之处,具有很高的参考价值,无论是Java的初学者还是Java编程老手,都 能从此书受益。 这时候大家可能会注意到,其中竟然没有大名鼎鼎的《Thinking in Java》这本书 。其实,这本书主要是从编程思想上来讲的,并没有完整的讲述Java的整个体系, 而是一种类似Tips的方法来对Java的知识点进行深入的分析和解释,就好像C++的经 典教材《C++ Primier》一样,并不适合作为初学语言的入门教材,蛋是在深入学习 Java的过程中的同时来读这本书会觉得受益匪浅。 值得一提的是,其实最有实用价值的是JDK-Document(下文中简称doc, http://ja va.sun.com/j2se/1.5.0/download.jsp中有离线版下载的,本例中只是列举了1.5的 doc,在相应的地方可以下载1.4甚至1.3的doc)和Java Tutorial在线教程( http:/ /java.sun.com/docs/books/tutorial/这个是在线查看的,离线版的下载本人目前 还不知道)。在doc中有四个部分API 文档(对SDK自带的标准Java API都进行了详 细的介绍,它是按照package来组织的,详细介绍了每一个class的继承关系,接口 的实现情况,以及所有public的属性和方法,对于每个方法的用途、调用的参数、 参数的类型,返回值的类型、以及方法可能抛出的异常等等)、guide(对一些Jav a技术和概念进行讲述)、relnotes(这个介绍新版本的JDK的发布信息以及新特点 )、tooldocs(主要对Java的所有命令进行讲述)。Doc是我们每一个Java工作者在 编程时必须的手册,目前只有英文版,sun中国社区正在进行汉化,相信不久就会出 现中文版的doc了。Tutorial也相当的不错,主要针对初学者,不过对于其他阶段的 Java学习者也有很大的帮助了。 以上主要针对J2SE的学习进行讲述的,Java主要有J2SE、J2EE、J2ME三个部分,J2 SE是基础。当我们对J2SE的学习掌握的差不多的时候,其实我们就会对Java的学习 有自己独特的体会,就会发现每一个Java技术自己所带的doc都对我们的学习有很大 的帮助。此外,经常去一些著名的网站上去看看各位网友的作品,对Java学习的心 得,确实对我们有很大提高,这里推荐 http://blog.csdn.net 。经常去图书馆或者 到书店去看看有关Java的书,看看它们是不是自己所需要的,这时候,选择学习Ja va的书籍就会自己拿主意了。 在上述的一些书籍的介绍中,并非每本书都要看,可根据自己的实际情况进行选择 ,或者像Java先行者咨询即可。
⑵ java初学者编程
第一,remove,list里面移除元素是用remove没错 但是不能像你现在这么移除,需要使用Iterator来进行处理,具体就不说了,网络一下就行,现在这么移除指不定什么时候回报异常,不相信你可以试试。
第二,牌相加的问题,正常情况牌发完后你是不是应该有记录?你可以创建一个list,专门用来记录玩家手中的牌,要计算总和的时候直接遍历list相加就可以了,游戏结束的时候清空list
第三,有第二部了,显示牌还困难吗?直接循环玩家list不就可以显示所有的牌了吗?
补充一下,你现在这么写,说明对面向对象还不是很熟悉,以现在这个程序来看,你首先要抽象出几个类,比如,玩家类(其中玩家类应该有当前手中牌这个属性,这因为手中的牌数不确定,那么这个属性就应该是一个list类型的),现在程序中的电脑和玩家都应该是玩家类的子类,然后发牌的时候应该是把牌放到玩家类的list属性中,这样相对来说就比现在这么写好很多
⑶ java编程初学者
import java.util.Scanner;
public class ZHIDAO {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("请输入五位会员账号:");
Scanner in=new Scanner(System.in);//从控制台输入会员账号
int out=in.nextInt();//获取你的会员账号
int random=(int)(Math.random()*10);//产生随即数
if(random==(out/100%10))//判断随即数与会员账号的百位是否相等
{
System.out.println("恭喜中奖!!!");
}else{
System.out.println("谢谢惠顾!");
}
}
}
⑷ 新手如何学好java编程
作者:张同学
链接:https://www.hu.com/question/22407671/answer/42284729
来源:知乎
著作权归作者所有,转载请联系作者获得授权。
作为一名Java的完全自学者。我来说说吧,希望能给大家带来点帮助,如果有不同意见的大家一起来讨论,总之,希望大家可以共同进步。。废话不多说了。。进去正题。。
学习Java呢如果你学过别的面向对象的语言那么通过类比我觉得你一定学起来比较轻松,当然了我们这里就从什么语言没学过的小白说起。。
首先来给大家推荐几本参考书。
ONE:
当初java入门的时候看了一些书,现在想起来特别喜欢 head first java。读起来的感觉就是不一样。强烈推荐!!
这本书我推荐对面向对象编程和其他计算机语言不熟悉的初学者,通俗易懂,讲的全是基础,不会让你被那些繁多的类,方法啥的弄的失去兴趣,因为里面全是基础大家认真看完即可。。。强力推荐这本。
疯狂Java 作者:李刚
这本书讲的极其细致,不过信息量太大,对于初学者来说任务太重。。如果你掌握了上面那本书的知识点,那我强烈建议你买下这本厚书好好研读,也可以将这本书作为一个类库来查阅。。总之知识点应有尽有。
TWO:
在读上面两本书的同时我建议你多看点网上的视频,推荐的视频有,马士兵老师的。。(java更新很快他讲的东西可能和现在的)网易公开课计算机体系里的Java教学,慕课网里的教学。
我想说的是这些视频最好是主看一个老师的(是主哦,也就是主要跟着一个老师的思路和顺序走,其他老师的作为不同角度的掌握),假设这个老师是A,听完课后如果觉得A讲的这节你不是很懂,那么一定要去看B老师讲的这节的内容,如果还不懂那就看C讲的的这节,D,E,F老师同理。。*****强烈建议!!!!看视频一定要做笔记!!!不然看了也白看,除非你有过目不忘的才能。。******
THREE:
硬件的东西说完了接下来我们就来聊聊方法,首先Java是一门语言,然后语言是用来和计算机沟通实现一定的功能,也就是说,语言是为需求而生滴。。所以你必须先有一个需求,比如你想用Java编写一个小游戏,那么你的初级阶段的学习就该是为了实现这个目标不断奋斗,兴趣使然嘛这样你就不会觉得累枯燥
(当初我学Java就有一个。。。特别奇怪的开始,记得那是一个夜黑风高的寒假,我姑姑家有一家店门相当于超市吧,啥都卖,过年特别忙,于是乎我被拉去当苦力,摆在我面前的是。。有无数程序的结账抄写过程,需要人力暴力操作。。我受不了了,开学我就开始学JavaAWT和SWING编程,第二个假期回家编了个界面程序给它,量身定做解决他的一切需求)额,说了这么多我只是想说要有明确的目标知道你要干啥,在干啥。。
FOUR:
学习初期你肯定会有千千万万个问题,心里有无数疑惑,这时候千万不要急躁,不要放弃。。解决方法应该是,有疑惑尽量请教别人,如果你觉得怕麻烦别人,那么请你去翻书,我建议不懂的地方要多看几本书的这个知识点,因为老师不同讲解的思路角度也不同,就像买鞋,一定有一款适合你。。如果你懒到书都不想翻,那么没关系,你就把这点疑惑完全的一字不落背下来。。多思考,有那么一天,往后走着走着你就会发现前面豁然开朗。。
FIVE:
最后也是最重要的一个就是代码量。。一定要多敲,不要眼高手低。。往往敲代码的时候你才可以发现问题。。我始终相信一句话,泪水和汗水这类东西,如果你流多了上天它自然会给予你一些东西来作为交换的礼物。。贵在坚持,忘记了在哪里看到的一句话,如果你的耐力和野心不相匹配,那么你最多也就是一个笑话。
额,我知道的只有这些了,说了这么多答主也每天在学习,希望大家一起讨论,说的不准确的多多包涵。。感谢看到这儿的人,费着这么大的劲读完,大家辛苦了。。。原谅答主语文不算特别好。。大家加油,为做一个充满幸福感的码农奋斗,。
⑸ 关于初学Java编程的建议。
初学书推荐 java核心编程第一卷
编译器初学不会遇到太麻烦的问题,直接jdk中的javac + java 这两个命令就行了(具体的再网络一下吧,不难)
编辑器我用的editplus或notepad++
以后写大的项目可以用eclipse
过早的用ide对学习编程语言不利,等开始能写东西的时候再用吧,加油!
⑹ 初学Java编程,这是怎么回事
找不到你的java文件: 123.java
因为你只给出了一个文件名,所以就必须在执行路径下,不然的话,需要给出完整的路径,比如 c:\xxx\123.java
⑺ 怎么学好java编程
首先我们先了解一下Java的组成部分,java主要分成三个部分javaSE,javaME,javaEE。
JAVA SE是学习JAVA EE、JAVA ME的基础,也版可以做本地的软件,权通俗讲就是做单机版的软件,JAVA EE主要是开发基于Web的系统,针对互联网的各种应用和大型复杂的项目给出解决方案,JAVA ME是用来开发游戏、电子设备、手机等方面的软件。那么怎样才能学好JAVA呢?我们可以从以下几点出发:
1.不要只看书,一定要实操代码。当你的代码量慢慢累计后,你的编程实例也就慢慢提升了。
2.坚持看源码,培养自己读懂源码的能力。
3.制定自己的学习计划,随时调整。
4.对于跨专业零基础的同学,自学太难,建议参加培训机构。
5.按时反馈自己的学习成果。
6.有问题先试着自己解决,不行再请教别人
7.坚持写技术博客,前期可以写读书笔记,后期再慢慢增加技术性知识。
⑻ 初学者用什么开发软件来编写JAVA程序
1、 初学者的话不建议上来就用IDE开发工具比如说:Eclipse、MyEclipse、
IntelliJ IDEA、netbean。但是也可以使用这些,不建议的原因不便于你了解JavaAPI,及相关的编译原理,编译过程之类的。主要是就是熟悉基础。
2、 刚开始可以使用记事本、editplus、notepad++,这些工具的话,比较单纯,但是可能会给初学者制造一些不必要的麻烦,影响学习的积极性。
如果你急于求成建议参考 1,否则参考 2 吧。
1会让你快速找到编程的快感。2的话如果你搞定了使用IDE的话也就是如数家珍。并且对于基础也会了解的比较多,因为在使用2的过程中你会犯下很多错误,当然大多数可能都是拼写错误,但是要大胆试错,不要怂。Good luck!
希望能帮到你,望点赞。
⑼ 初学JAVA应该从什么开始学
在编程的世界里,Java一直是企业级别开发最喜欢选择的编程语言,从java目前的就业形势来看还是相当不错的,由于手机安卓开发的需要,许多人也开始转战Java的学习,极客营觉得虽然java开发人员的需求量变得越来越大,但这并不代表做java开发人员的技术就可以一成不变,java技术更新的很快,而且在现在中国的培训机构里java学员都是批量生产的,那么竞争压力也是很大的。所以许多人在学好java的基础后,转战到火热的安卓开发。来分析一下java各种大致学习路线。
首先做java最后大致是两个方向:web企业级开发(JavaWeb J2EE)和手机android开发。这两个方向的先决条件是J2SE,J2SE并不是那么简单,只有当逐渐学的深入了才体会到java的精髓。
1.HTML+CSS+DIV,前端会用到,作为研发人员至少应该会简单写些页面出来,这是许多编程语言都需要了解的基础。
2.JAVASCRIPT,想要使用一些特殊的效果就需要这个了,但是并不需要很精通,当需要用到JS的地方可以用Jquery代理,Jquery很好学,很有用的JS框架,看似复杂华丽的效果他都能轻松完成。
3.Ajax,前端异步交互技术,值得去研究。
4.JSP,Servlet,Javabean,发展至今已经不提倡在JSP里嵌入JAVA代码,所以仅仅是作为视图层使用,嵌入些如JSTL和Struts2标签库的标签成为动态页面。Servlet是应该重点学习的,包括如过滤器、监听器等,这些都是当下Struts2或者未来WEB框架的底层基础和原理。
5.Strut2+Hibernate(or JPA)+Spring,当下十分流行的开发框架。其实是很容易上手的,但关键是需要懂得原理。
6.Web Service技术,它能使得运行在不同机器上的不同应用无须借助附加的、专门的第三方软件或硬件, 就可相互交换数据或集成。依据Web Service规范实施的应用之间, 无论它们所使用的语言、 平台或内部协议是什么, 都可以相互交换数据。
⑽ java初学者的程序
package lijugu_exam;
/**
* <p>Title:lijugu_exam</p>
*
* <p>Description: J2ee_exam</p>
*
* <p>Copyright: Copyright (c) 2006</p>
*
* <p>Company: accp</p>
*
* @author lijugu
* @version 1.0
*/
import java.io.*;
import java.sql.*;
import java.util.LinkedList;
import java.util.Iterator;
import java.util.logging.Logger;
public class DBHadler {
private LinkedList linkedlist;
private Connection connection;
private Statement statement;
private PreparedStatement preparedstatement;
private String url;
private String user;
private String password;
private Logger logger;
public DBHadler(LinkedList LinkedList) {
try{
this.linkedlist = linkedlist;
logger=Logger.getLogger("DBHadler");
Class.forName("jdbc.odbc.jdbcOdbcDriver");
url = "jdbc:odbc:admain";
user = "管理员";
password = "admain";
connection = DriverManager.getConnection(url, user, password);
statement=connection.createStatement();
preparedstatement=connection.prepareStatement("inset into qiang values(id=?,messages=?)");
WriterDB();
}catch(SQLException s){
s.printStackTrace();
}catch(ClassNotFoundException c){
c.printStackTrace();
}
}
public void WriterDB() {
try{
statement.execute("create database lijugu");
statement.execute("create table MY(id int,messages varchar(100)");
logger.info("创建表成功.");
int s=1;
for (Iterator i = linkedlist.iterator(); i.hasNext(); ) {
preparedstatement.setInt(1,s);
preparedstatement.setString(2,i.next().toString());
preparedstatement.executeUpdate();
s++;
}
logger.info("添加记录成功");
}catch(SQLException s){
s.printStackTrace();
}
}
}
package lijugu_exam;
import java.util.*;
import java.io.*;
import java.util.logging.Logger;
/**
* <p>Title:lijugu_exam</p>
*
* <p>Description: J2ee_exam</p>
*
* <p>Copyright: Copyright (c) 2006</p>
*
* <p>Company: accp</p>
*
* @author lijugu
* @version 1.0
*/
public class FileOperator {
private LinkedList linkedlist;
private File file;
private FileWriter filewriter;
private Logger logger;
//private DBHadler db;
public FileOperator(LinkedList linkedlist) {//MessageInputer传递一个linkedlist对象过来
this.linkedlist = linkedlist;
logger=Logger.getLogger("FileOperator");
file = new File("MY.fd");
WriterFile();
}
public void WriterFile() {
try{
PrintWriter printwriter = new PrintWriter(new BufferedWriter(new
FileWriter(file)));
for (Iterator i = linkedlist.iterator(); i.hasNext(); ) {
//System.out.print(i.next());
printwriter.print(i.next());
}
printwriter.close();
logger.info("写入文件成功!");
}catch(IOException i){
i.printStackTrace();
}
}
}
package lijugu_exam;
import java.util.LinkedList;
/**
* <p>Title:lijugu_exam</p>
*
* <p>Description: J2ee_exam</p>
*
* <p>Copyright: Copyright (c) 2006</p>
*
* <p>Company: accp</p>
*
* @author lijugu
* @version 1.0
*/
public class Messagcenter {
private LinkedList linkedlist;
public Messagcenter(){
MessageInputer inputer=new MessageInputer();//接收用户输入并保存到LinkedList集合中
System.out.print("lijugu");
this.linkedlist=inputer.linkedlist;
DBHadler hadler=new DBHadler(linkedlist);//把数据插入到数据库中
}
public static void main(String[] args) {
MessageInputer m=new MessageInputer();
}
}
package lijugu_exam;
/**
* <p>Title:lijugu_exam</p>
*
* <p>Description: J2ee_exam</p>
*
* <p>Copyright: Copyright (c) 2006</p>
*
* <p>Company: accp</p>
*
* @author lijugu
* @version 1.0
*/
import java.io.*;
import java.util.*;
import java.util.logging.Logger;
public class MessageInputer {
public LinkedList linkedlist;
private Logger logger;
private FileOperator f;
public MessageInputer() {
linkedlist=new LinkedList();
//linkedlist.clear();
logger=Logger.getLogger("MessageInputer");
Recieve();
WriterFile();
}
public void Recieve() {//接收用户输入,并保存到集合中.
try{
logger.info("输入数据:");
BufferedReader reader = new BufferedReader(new
InputStreamReader(
System.in)); //接收并把键盘输入的字节数据转换成字符数据
String str ;
while(!(str= reader.readLine()).equals("end")){
linkedlist.add(new String(str)); //把接收的写入到linkedlist对象中
}
reader.close();
logger.info("输入完毕!");
}catch(IOException i){
i.printStackTrace();
}
}
public void WriterFile() {//从集合中读出来并写入文件"MY.fd"中.
f=new FileOperator(linkedlist);
}
}
不就是要原代码吗 半个小时就帮你搞定了
而且全部是以你的名字来命名的
对的住吧`?楼主