为了在您的机器上配置起一个Java开发环境——您将使用一个“开发环境”来“开发”(编写)程序——您需要完成以下这些步骤:
1下载一个包含Java开发环境(编译器和其他工具)的大文件。点击“下载J2SE SDK”链接下载SDK(软件开发工具包)软件。网页会显示一个许可协议。点击“接受”。选择您的 *** 作系统,然后将文件保存到下载目录中。这是一个巨大的文件,用电话调制解调器下载需要好几个小时。接下来的两个文件也很大。
2下载一个包含Java文档的大文件。选择 *** 作系统后点击SDK141文档的链接。
3如果您的机器上还没有安装WinZip(或可执行相同功能的程序),那么您需要下载一个包含WinZip的大文件并安装之。如果您的机器上没有安装某个的版本的WinZip或其他解压缩软件,下载WinZip的试用版。运行EXE文件安装。很快我们将使用它来安装文档。
4安装Java开发环境。运行第一步下载的j2sdk-1_4_1-exe文件。他将自动解压并安装开发工具包。
5安装文档。阅读安装说明文档。它会要求您将文档文件移至刚才开发工具包的安装目录。将文档解压缩,文件就会被安排到适当的位置。
6调整环境变量。按照此页的要求,您需要改变路径变量。最简单的办法是打开一个MS-DOS窗口键入PATH看看当前的路径变量是什么,然后用记事本打开autoexecbat按要求修改PATH环境变量。
7全面测试。现在您应该可以打开另一个MS-DOS窗口并键入javac了。如果一切设置妥当,那么您将看到屏幕将输出两行文字告诉您如何使用javac。这意味着一切已经准备就绪了。如果您看到“错误的命令或文件名”这条消息,则说明还没有准备好。请重新阅读安装说明检查哪里出了问题。确定PATH被正确设置并可用。回头重新阅读上面的步骤,问题不解决不要轻易放弃。现在您已自豪地拥有一台能够编译Java程序的机器了。您已经准备好开始编写软件了!
顺便指出,刚才您解压缩的内容包括一个demo(演示)目录,其中包含许多精致的例子。所有的例子都可以立即执行,所以您不妨找到这个目录试运行一下其中的某些例子。许多例子都会发声,所以请打开扬声器。要运行例子,找到名如example1html的网页文件并使用您常用的浏览器打开即可。
您的第一个程序将是小巧可爱的。它将建立一个绘图区域并在其上绘制一条对角线。创建此程序您需要:
1打开记事本键入(或复制粘贴)程序 。建立一个新目录以保存程序。打开记事本(或其他可以创建TXT文件的文本编辑器)。将范例程序录入或复制粘贴到记事本窗口中。切记:输入程序的大小写敏感。因此必须按照范例程序中字母的大小写输入。重审以上编程步骤。如果录入内容和范例程序不是完全一致,则程序将无法正常运行。
2保存程序 。将文件在第一步创建的路径下保存,文件名为FirstAppletjava。文件名大小写敏感。请确保字母“F”和“A”大写,其他字母小写,如前所示。
3使用Java编译器编译程序生成一个Java程序 。
打开一个MS-DOS窗口。改变至包含FirstAppletjava的路径下(cd),键入:
javac FirstAppletjava
记住大小写敏感!或者编译成功,这时屏幕不输出任何信息,或者有错误发生。若没有错误,则会在目录里生成一个名为FirstAppletclass的文件与FirstAppletjava并列。
(请确保程序保存的文件名为FirstAppletjava而不是FirstAppletjavatxt。最简单的办法就是在MS-DOS窗口下键入dir然后查看文件名。若扩展名是txt 则请重命名文件去掉此扩展名。也可以运行Windows资源管理器在“查看”菜单下点击“选项”。确保“隐藏已注册的MS-DOS文件扩展名”选项处于未选中状态,然后在资源管理器中查看文件名。若需要则将文件改名。)
4排除问题。若有问题产生则想办法解决。将您的程序与上面的范例程序对比,使之完全相同。修改过程中不断编译程序,直到没有错误发生。
5建立一个HTML网页“包含”刚创建的Java程序 。
创建一个HTML页面来包含小程序。另开一个记事本窗口。录入下面的内容:
将此文件存于同一目录中,文件名为applethtm。
1运行Java程序 。
在您的MS-DOS窗口中键入:
appletviewer applethtm
应该可以看见一条从左上角到右下角的对角线:(如上图所示)
将小程序查看器的窗口拉大一些以查看整条对角线。您也可以将此HTML网页装载到任何现用的浏览器中,如Netscape Navigator或微软IE,看到的结果是大致相同的。
使用Java语言编程就需要一个Java编译器。下一节将指导您下载并安装一个编译器。一旦有了编译器我们就可以开始学习编程了。下载和安装过程将会持续几个小时,大部分时间用来下载几个很大的文件。您还需要有大约40兆字节的空闲磁盘空间(开始前请确定有足够的空间)。
这里是本节的示范程序:
import javaawtGraphics;
public class FirstApplet extends javaappletApplet
{
public void paint(Graphics g)
{
gdrawLine(0, 0, 200, 200);
}
}
public class StringBufferDemo {
public static void main(String[] args) {
StringBuffer s=new StringBuffer("近来天气不太好,有时几天都见不到月亮。可今天却是明月当空,青天万里无云");
StringBuffer s1=new StringBuffer("明月当空,青天万里无云");
s=sdelete(slastIndexOf("明月当空,青天万里无云"),slength());//将“明月当空,青天万里无云”取出,存到StringBuffer s1中。
Systemoutprintln(s);
s1=s1delete(3,s1length());//删除s1从第三个字符开始的所有字符。
Systemoutprintln(s1);
StringBuffer s2=new StringBuffer(ssubstring(7,10));//取s的一个子串s2(从第7个开始取出3个字符)。
Systemoutprintln(s2);
s2reverse();//将子串s2反转。
Systemoutprintln(s2);
s1append(s2);//将s2添加到s1的后面。
Systemoutprintln("字符串'"+s1+"'的长度是:"+s1length());//计算新字符串的长度L,并打印出结果。
}
}
结果是:
近来天气不太好,有时几天都见不到月亮。可今天却是
明月当
,有时
时有,
字符串'明月当时有,'的长度是:6
import javautilRandom;
import javautilScanner;
public class T {
public static void main(String[] args) throws Exception {
Scanner in = new Scanner(Systemin);
int difficulty;//难度
int mode;//运算类型
int answer;//答案
int amount;//挑战题目数量
int score = 0;//得分
Systemoutprintln("请输入难度(1:一位数、2:两位数、3:三位数):");
difficulty = innextInt();
Systemoutprintln("请输入运算类型(1:加、2:减、3:乘、4:除):");
mode = innextInt();
Systemoutprintln("请输入想要挑战的题目数量:");
amount = innextInt();
Random random = new Random();
for (int i = 0; i < amount; i++) {
if (difficulty == 1) {
if (mode == 1) {
int x = randomnextInt(10);
int y = randomnextInt(10);
Systemoutprintln("第" + i + "题:");
Systemoutprint(x + " + " + y + " = ");
answer = innextInt();
if (answer == (x + y)) {
Systemoutprintln("答对了\n");
score++;
} else {
Systemoutprintln("答错了,答案是:" + (x + y) + "\n");
}
} else if (mode == 2) {
int x = randomnextInt(10);
int y = randomnextInt(10);
Systemoutprintln("第" + i + "题:");
Systemoutprint(x + " - " + y + " = ");
answer = innextInt();
if (answer == (x - y)) {
Systemoutprintln("答对了\n");
score++;
} else {
Systemoutprintln("答错了,答案是:" + (x - y) + "\n");
}
} else if (mode == 3) {//乘法
} else if (mode == 4) {//除法 考虑小数的问题
} else {
throw new Exception("运算类型输入值不合法");
}
} else if (difficulty == 2) {
if (mode == 1) {
int x = randomnextInt(100);
int y = randomnextInt(100);
Systemoutprintln("第" + i + "题:");
Systemoutprint(x + " + " + y + " = ");
answer = innextInt();
if (answer == (x + y)) {
Systemoutprintln("答对了\n");
score++;
} else {
Systemoutprintln("答错了,答案是:" + (x + y) + "\n");
}
} else if (mode == 2) {
} else if (mode == 3) {//乘法
} else if (mode == 4) {//除法 考虑小数的问题
} else {
throw new Exception("运算类型输入值不合法");
}
} else if (difficulty == 3) {
if (mode == 1) {
int x = randomnextInt(1000);
int y = randomnextInt(1000);
Systemoutprintln("第" + i + "题:");
Systemoutprint(x + " + " + y + " = ");
answer = innextInt();
if (answer == (x + y)) {
Systemoutprintln("答对了\n");
score++;
} else {
Systemoutprintln("答错了,答案是:" + (x + y) + "\n");
}
} else if (mode == 2) {
} else if (mode == 3) {//乘法
} else if (mode == 4) {//除法 考虑小数的问题
} else {
throw new Exception("运算类型输入值不合法");
}
} else {
throw new Exception("难度输入值不合法");
}
}
Systemoutprintln("挑战结束,您的分数为:" + score);
}
}
我就只举了加法的例子,其他运算的写法都是类似的,你照葫芦画瓢即可
运行结果:
List<String> list1 = new ArrayList<String>();
List<String> list2 = new ArrayList<String>();
List<String> list3 = new ArrayList<String>();
Map<String,List<String>> map = new HashMap<String,List<String>> ();
list1add("郭阳");list1add("三丰");list1add("李莫愁");
list2add("xxxxx");
list3add("yyyy");
mapput("1班",list1);mapput("2班",list2);mapput("3班",list3);
//取出[1班]信息
systemoutprintln("1班");
List<String > list = mapget("1班");
for(String str:list){
systemoutprintln('str');
}
java程序员编写代码的技巧有哪些呢?Java程序员必须努力编写完美的代码,因此,为了编写干净的代码,必须知道如何编写才是真正的好方法,下面北京昌平java软件开发为大家总结了一些帮助编写代码的小方法。
1、编写之前进行思考
首先花10分钟,20分钟甚至30分钟的时间来思考你需要什么,以及哪些设计模式适合你将要编码的内容。这个时候北京昌平IT培训认为你会很高兴你花费的这些时间,当你必须改变或添加一些代码时,你不会担心花费的几分钟,而是会花更多的时间去琢磨。
2、代码进行注释
没有什么比两个月后检查你的代码并不记得它被用来做什么更糟的了。重要的都注释一下,如果是自己非常了解的内容,昌平北大青鸟建议这些可以选择不进行注释。
3、不要复制粘贴代码
最后自己手写代码,复制粘贴代码会出现代码块重复的情况,并且不利于代码的解读。
4、学会测试代码
测试、测试、测试你的代码。不要等到你完成了程序才测试它,否则当你发现一个巨大的错误时,你会后悔之前的决定。因为昌平计算机培训学校发现如果你没有进行每段代码测试,最后出现问题是很难找到的。
1内部使用 C 的 longjmp 机制让出一个协程。 因此,如果一个 C 函数 foo 调用了一个 API 函数, 而这个 API 函数让出了(直接或间接调用了让出函数)。 由于 longjmp 会移除 C 栈的栈帧, Lua 就无法返回到 foo 里了。
2为了回避这类问题, 碰到 API 调用中调用让出时,除了那些抛出错误的 API 外,还提供了三个函数: lua_yieldk, lua_callk,和 lua_pcallk 。 它们在让出发生时,可以从传入的 延续函数 (名为 k 的参数)继续运行。
3我们需要预设一些术语来解释延续点。 对于从 Lua 中调用的 C 函数,我们称之为 原函数。 从这个原函数中调用的上面所述的三个 C API 函数我们称之为 被调函数。 被调函数可以使当前线程让出。 (让出发生在被调函数是 lua_yieldk, 或传入 lua_callk 或 lua_pcallk 的函数调用了让出时。)
4假设正在运行的线程在执行被调函数时让出。 当再次延续这条线程,它希望继续被调函数的运行。 然而,被调函数不可能返回到原函数中。 这是因为之前的让出 *** 作破坏了 C 栈的栈帧。 作为替代品,Lua 调用那个作为被调函数参数给出的 延续函数 。 正如其名,延续函数将延续原函数的任务。
5注意这里那个额外的显式的对延续函数的调用:Lua 仅在需要时,这可能是由错误导致的也可能是发生了让出而需要继续运行,才会调用延续函数。 如果没有发生过任何让出,调用的函数正常返回, 那么 lua_pcallk (以及 lua_callk)也会正常返回。 (当然,这个例子中你也可以不在之后调用延续函数, 而是在原函数的调用后直接写上需要做的工作。)
6Lua 会把延续函数看作原函数。 延续函数将接收到和原函数相同的 Lua 栈,其接收到的 lua 状态也和 被调函数若返回后应该有的状态一致。 (例如, lua_callk 调用之后, 栈中之前压入的函数和调用参数都被调用产生的返回值所替代。) 这时也有相同的上值。 等到它返回的时候,Lua 会将其看待成原函数的返回去 *** 作。
7我们需要预设一些术语来解释延续点。 对于从 Lua 中调用的 C 函数,我们称之为 原函数。 从这个原函数中调用的上面所述的三个 C API 函数我们称之为 被调函数。 被调函数可以使当前线程让出。 (让出发生在被调函数是 lua_yieldk, 或传入 lua_callk 或 lua_pcallk 的函数调用了让出时。)
8假设正在运行的线程在执行被调函数时让出。 当再次延续这条线程,它希望继续被调函数的运行。 然而,被调函数不可能返回到原函数中。 这是因为之前的让出 *** 作破坏了 C 栈的栈帧。 作为替代品,Lua 调用那个作为被调函数参数给出的 延续函数 。 正如其名,延续函数将延续原函数的任务。
希望能帮到你,谢谢!
以上就是关于编写一个JAVA程序全部的内容,包括:编写一个JAVA程序、用Java编写程序、用JAVA语言编写一个程序,要求如下:等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)