本文目录一览:
Java编程实现以下功能:
import java.util.*;
/**
* @author hardneedl
*/
public class MatrixDemo {
private interface ElementWrapperT{
int getRowIndex();
int getColumnIndex();
T getValue();
}
private static T ElementWrapper createWrapper(int r, int c, T t){
return new ElementWrapperT() {
public int getRowIndex() {
return r;
}
public int getColumnIndex() {
return c;
}
public T getValue() {
return t;
}
public String toString() {
return "value = " + getValue() +", row = " + getRowIndex() + ", col = " + getColumnIndex();
}
};
}
private static ListElementWrapperInteger setupMatrix(int row, int cols){
ListElementWrapperInteger L = new ArrayList();
Scanner scanner=new Scanner(System.in);
int r = 0;
while (r row) {
System.out.printf("输入第%d行:\r\n", (r + 1));
int a = 0;
while (a cols) {
L.add(createWrapper(r,a, scanner.nextInt()));
a++;
}
r++;
}
return L;
}
public static void main(String... args) {
ListElementWrapperInteger L = setupMatrix(3,4);
OptionalElementWrapperInteger op = L.stream().max(Comparator.comparing(ElementWrapper::getValue));
System.out.println(op.get());
}
}
java是实现什么功能
Java是Sun公司推出的一种编程语言。它是一种通过解释方式来执行的语言,语法规则和C++类似。同时,Java也是一种跨平台的程序设计语言。用Java语言编写的程序叫做“Applet”(小应用程序),用编译器将它编译成类文件后,将它存在WWW页面中,并在HTML档上作好相应标记,用户端只要装上Java的客户软件就可以在网上直接运行“Applet”。 Java非常适合于企业网络和Internet环境,现在已成为Internet中最受欢迎、最有影响的编程语言之一。 Java有许多值得称道的优点,如简单、面向对象、分布式、解释性、可靠、安全、结构中立性、可移植性、高性能、多线程、动态性等。Java摈弃了C++中各种弊大于利的功能和许多很少用到的功能。 Jave可以运行与任何微处理器,用Java开发的程序可以在网络上传输,并运行于任何客户机上。
java有哪些功能?
Java是由Sun Microsystems公司于1995年5月推出的Java程序设计语言(以下简称Java语言)和Java平台的总称。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态的Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Java applet。另一方面,Java技术也不断更新。
Java平台由Java虚拟机(Java Virtual Machine)和Java 应用编程接口(Application Programming Interface、简称API)构成。Java 应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。现在Java平台已经嵌入了几乎所有的操作系统。这样Java程序可以只编译一次,就可以在各种系统中运行。Java应用编程接口已经从1.1x版发展到1.2版。目前常用的Java平台基于Java1.4,最近版本为Java1.7。
Java分为三个体系J2SE(Java2 Standard Edition),J2EE(Java 2 Platform,Enterprise Edition),J2ME(Java 2 Micro Edition)。
Java的简介
Java是一种简单的,面象对象的,分布式的,解释的,健壮的安全的,结构的中立的,可移植的,性能很优异的多线程的,动态的语言。
当1995年SUN推出Java语言之后,全世界的目光都被这个神奇的语言所吸引。那么Java到底有何神奇之处呢?
Java语言其实最是诞生于1991年,起初被称为OAK语言,是SUN公司为一些消费性电子产品而设计的一个通用环境。他们最初的目的只是为了开发一种独立于平台的软件技术,而且在网络出现之前,OAK可以说是默默无闻,甚至差点夭折。但是,网络的出现改变了OAK的命运。
在Java出现以前,Internet上的信息内容都是一些乏味死板的HTML文档。这对于那些迷恋于WEB浏览的人们来说简直不可容忍。他们迫切希望能在WEN中看到一些交互式的内容,开发人员也极希望能够在WEB上创建一类无需考虑软硬件平台就可以执行的应用程序,当然这些程序还要有极大的安全保障。对于用户的这种要求,传统的编程语言显得无能为力,面SUN的工程师敏锐地察觉到了这一点,从1994年起,他们开始将OAK技术应用于WEB上,并且开发出了HotJava的第一个版本。当SUN公司1995年正式以Java这个名字推出的时候,几乎所有的WEB开发人员都想到:噢,这正是我想要的。于是Java成了一颗耀眼的明星,丑小鸭一下了变成了白天鹅。
Java的开发环境有不同的版本,如sun公司的Java Development Kit, 简称JDK。后来微软公司推出了支持Java规范的Microsoft Visual J++ Java开发环境,简称 VJ++。
Java的特点
1.平台无关性
平台无关性是指Java能运行于不同的平台。Java引进虚拟机 原理,并运行于虚拟机,实现不同平台的Java接口之间。使用Java编写的程序能在世界范围内共享。Java的数据类型与 机器无关,Java虚拟机(Java Virtual Machine)是建立在硬件和操作系统之上,实现Java二进制代码的解释执行功能, 提供于不同平台的接口的。
2.安全性
Java的编程类似C++,学习过C++的读者将很快掌握Java的精髓。Java舍弃了C++的指针对存储器地址的直接操作,程序运行时,内存由操作系统分配,这样可以避免病毒通过指针侵入系统。Java对程序提供了安全管理器,防止程序的非法访问。
3.面向对象
Java吸取了C++面向对象的概念,将数据封装于类中,利用类的优点,实现了程序的简洁性和便于维护性。类的封装性、继承性等有关对象的特性,使程序代码只需一次编译,然后通过上述特性反复利用。程序员只需把主要精力用在类和接口的设计和应用上。Java提供了众多的一般对象的类,通过继承即可使用父类的方法。在Java中,类的继承关系是单一的非多重的,一个子类只有一个父类,子类的父类又有一个父类。Java提供的Object类及其子类的继承关系如同一棵倒立的树形,根类为Object类,Object类功能强大,经常会使用到它及其它派生的子类。
4.分布式
Java建立在扩展TCP/IP网络平台上。库函数提供了用HTTP和FTP协议传送和接受信息的方法。这使得程序员使用网络上的文件和使用本机文件一样容易。
5.健壮性
Java致力于检查程序在编译和运行时的错误。类型检查帮助检查出许多开发早期出现的错误。Java自己操纵内存减少了内存出错的可能性。Java还实现了真数组,避免了覆盖数据的可能,这些功能特征大大提高了开发Java应用程序的周期。并且Java还提供了Null指针检测、数组边界检测、异常出口、Byte code校验等功能。
Java与C/C++语言
Java提供了一个功能强大语言的所有功能,但几乎没有一点含混特征。C++安全性不好,但C和C++被大家接受,所以Java设计成C++形式,让大家很容易学习。
Java去掉了C++语言中的指针运算、结构、typedefs、#define、需要释放内存等功能,减少了平常出错的50%,让Java的语言功能很精炼。而且,因为Java很小,所以整个解释器只需215K的RAM,并增加了一些很有用的功能,如自动收集碎片。
Java实现了C++的基本面象对象技术并有一些增强,(为了语言简单,删除了一些功能)。Java处理数据方式和用对象接口处理对象数据方式一样。
本回答由网友推荐
用Java实现一个简单功能
这个问题需要用到javax.swing包下的JFileChooser类。这个类就是弹出一个可以打开文件以及保存的窗口。我想楼主肯定是需要打开文件,并显示到一个文本区域中;保存文件就是保存文本区域中的文本,并写入到磁盘中。我给你写个例子你可以看看。
import java.io.*;
import java.awt.event.*;
import javax.swing.*;
import java.awt.*;
public class Test extends JFrame implements ActionListener
{
private JTextArea area;
private JButton button1;
private JButton button2;
public Test() throws Exception
{
area=new JTextArea();
button1=new JButton("保存");
button2=new JButton("打开");
button1.addActionListener(this);//注册按钮事件
button2.addActionListener(this);//注册按钮事件
this.setLayout(new GridLayout(3,1));//设置布局管理器
this.add(area);
this.add(button1);
this.add(button2);
this.setSize(300,400);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭事件
}
public void actionPerformed(ActionEvent e) //关键代码,事件处理
{
JFileChooser choose=new JFileChooser();//创建文件选择器
if(e.getActionCommand().equals("保存"))//当事件源是“保存”的时候发生如下事件:
{
int result=choose.showSaveDialog(this);//调用保存对话框,result是返回的参数
File file=choose.getSelectedFile();//返回选择的文件
if(result==0) {//当参数等于0是就证明你点的是保存,下面打开是同理的
try{
FileWriter fw=new FileWriter(file);//创建FileWriter流
area.write(fw);//JTextArea的方法write()可以直接将文件写入
}catch(Exception ee) {
ee.printStackTrace();
}
}
}
else//当事件源是“打开”的时候发生如下事件:
{
int result=choose.showOpenDialog(this);
System.out.println(result);
if(result==0) {
try{
File file=choose.getSelectedFile();
FileReader reader=new FileReader(file);
area.read(reader,"open");//JTextArea的方法read()方法可以直接读取文件,并将文本内容写入到JtextArea上,第二个参数不用管它
}catch(Exception ee)
{
ee.printStackTrace();
}
}
}
}
public static void main(String[] args) throws Exception
{
Test test=new Test();
test.setVisible(true);
}
}
总之如果楼主只想知道怎么弹出窗口,那么就用JFileChooser类的showOpenDialog和showSaveDialog方法就可以了
编写一个Java程序,实现以下功能:
import java.io.*;
public class FileLineNumber {
public static void main(String[] args) throws Exception {
appendLineNumber(new File("FileLineNumber.java"), new File("a.txt"));
}
public static void appendLineNumber(File from, File to) throws Exception {
BufferedReader in = new BufferedReader(new FileReader(from));
StringBuilder sb = new StringBuilder();
String t;
int lineNumber = 1;
while((t = in.readLine()) != null) {
sb.append(lineNumber + " ");
sb.append(t);
sb.append(System.getProperty("line.separator"));
lineNumber++;
}
in.close();
BufferedWriter out = new BufferedWriter(new FileWriter(to));
out.write(sb.toString());
out.close();
}
}