「java使用clipre」java使用cmd为什么找不到文件
今天给各位分享java使用clipre的知识,其中也会对java使用cmd为什么找不到文件进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
怎样在Java实例开发的过程中使用进度条
在读取大型文件或者其它大批量数据输入操作时 希望能够通过一个进度条显示当前的进度 现在在Java中非常容易实现 仅仅需要几行代码即可 Java的swing包提供了ProgressMonitorInputStream类 该类提供了自动地弹出进度窗口和事件处理机制 使用这个类也非常方便 只需要把任何一个InputStream作为参数 构造一个新的ProgressMonitorInputStream类 其它不需要任何额外的代码 即可实现进度窗口的自动生成 ProgressMonitorInputStream类可以和其它InputStream一样使用 ProgressMonitorInputStream类继承层次 [pre]java lang Object|+ java io InputStream|+ java io FilterInputStream|+ javax swing ProgressMonitorInputStream[/pre] 构造方法 ProgressMonitorInputStream(Component parentComponent Object message InputStream in)parentComponent 触发被监视操作的组件message (如果弹出进度显示窗口) 显示在进度显示窗口中的指示信息in 需要监视的输入流 操作方法 除了在InputStream和FilterInputStream中继承的方法外 还增加了如下方法 ProgressMonitor getProgressMonitor()//得到当前对象使用的ProgressMonitor对象 int read()int read(byte[] b)int read(byte[] b int off int len)void reset()long skip(long n)//上面几个方法都是覆盖了FilterInputStream中的方法 因为需要更新进度指示 void close()//因为需要关闭进度监视对象和窗口 所以覆盖了FilterInputStream父类中的close方法 示例代码: import java awt FlowLayout;import java awt event ActionEvent;import java awt event ActionListener;import java io FileInputStream;import java io InputStream;import javax swing JButton;import javax swing JFrame;import javax swing ProgressMonitorInputStream;public class ProgressMonitorTest{public static void main(String[] args){// 创建一个包含 Click me 的窗口final JFrame f =new JFrame( ProgressMonitor Sample );f getContentPane() setLayout(new FlowLayout());JButton b = new JButton( Click me );f getContentPane() add(b);f pack();// 设置按钮的动作事件b addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){// 这儿使用了新的线程处理按钮的动作事件 因为我们需要//主窗口的线程响应用户 这样你可以多次点击该按钮 //会启动多个读取文件的线程 主窗口也保持响应 new Thread(){public void run(){try {// 打开文件输出流 把InputStream包装在ProgressMonitorInputStream中 //在当前目录中需要放置一个大文件 建议超过 MInputStream in = new FileInputStream( bigfile dat );ProgressMonitorInputStream pm =new ProgressMonitorInputStream(f Reading a big file in);// 读取文件 如果总耗时超过 秒 将会自动弹出一个进度监视窗口 // 显示已读取的百分比 int c;while((c=pm read()) != ){// 处理代码}pm close();}catch(Exception ex){ex printStackTrace();}}} start();}});// 设置缺省的窗口关闭行为 并显示窗口 f setDefaultCloseOperation(JFrame EXIT_ON_CLOSE);f setVisible(true);}} lishixinzhi/Article/program/Java/hx/201311/25629
java中使用ArrayList如何修改里面的内容.
java里增强for循环【for(String a: arrayList)】里面可以修改数据,但是不能删除数据,如下例子:
pre t="code" l="java"修改集合:
import java.util.ArrayList;
import java.util.List;
public class TestA {
public static void main(String[] args){
//集合
ListString arrayList=new ArrayListString();
//存放元素
arrayList.add("hello");
arrayList.add("ninghao");
arrayList.add("bye");
//集合标量
int index=0;
//遍历集合
for(String a:arrayList){
//输出集合对象
System.out.println(a);
//修改集合对象
arrayList.set(index, "hi");
//标量加一
index++;
}
//输出集合
System.out.println(arrayList);
}
}
结果:
hello
ninghao
bye
[hi, hi, hi]
删除集合元素:
import java.util.ArrayList;
import java.util.List;
public class TestA {
public static void main(String[] args){
//集合
ListString arrayList=new ArrayListString();
//存放元素
arrayList.add("hello");
arrayList.add("ninghao");
arrayList.add("bye");
//集合标量
int index=0;
//遍历集合
for(String a:arrayList){
//输出集合对象
System.out.println(a);
//删除元素
arrayList.remove(index);
//标量加一
index++;
}
//输出集合
System.out.println(arrayList);
}
}
结果:
hello
Exception in thread "main" java.util.ConcurrentModificationException
at java.util.AbstractList$Itr.checkForComodification(AbstractList.java:372)
at java.util.AbstractList$Itr.next(AbstractList.java:343)
at app.TestA.main(TestA.java:19)由以上例子可以看出,增强for循环,在循环里可以修改集合元素,但是不能删除集合元素。
用java怎么构造一个二叉树呢?
java构造二叉树,可以通过链表来构造,如下代码:
public class BinTree {
public final static int MAX=40;
BinTree []elements = new BinTree[MAX];//层次遍历时保存各个节点
int front;//层次遍历时队首
int rear;//层次遍历时队尾
private Object data; //数据元数
private BinTree left,right; //指向左,右孩子结点的链
public BinTree()
{
}
public BinTree(Object data)
{ //构造有值结点
this.data = data;
left = right = null;
}
public BinTree(Object data,BinTree left,BinTree right)
{ //构造有值结点
this.data = data;
this.left = left;
this.right = right;
}
public String toString()
{
return data.toString();
}
//前序遍历二叉树
public static void preOrder(BinTree parent){
if(parent == null)
return;
System.out.print(parent.data+" ");
preOrder(parent.left);
preOrder(parent.right);
}
//中序遍历二叉树
public void inOrder(BinTree parent){
if(parent == null)
return;
inOrder(parent.left);
System.out.print(parent.data+" ");
inOrder(parent.right);
}
//后序遍历二叉树
public void postOrder(BinTree parent){
if(parent == null)
return;
postOrder(parent.left);
postOrder(parent.right);
System.out.print(parent.data+" ");
}
// 层次遍历二叉树
public void LayerOrder(BinTree parent)
{
elements[0]=parent;
front=0;rear=1;
while(frontrear)
{
try
{
if(elements[front].data!=null)
{
System.out.print(elements[front].data + " ");
if(elements[front].left!=null)
elements[rear++]=elements[front].left;
if(elements[front].right!=null)
elements[rear++]=elements[front].right;
front++;
}
}catch(Exception e){break;}
}
}
//返回树的叶节点个数
public int leaves()
{
if(this == null)
return 0;
if(left == nullright == null)
return 1;
return (left == null ? 0 : left.leaves())+(right == null ? 0 : right.leaves());
}
//结果返回树的高度
public int height()
{
int heightOfTree;
if(this == null)
return -1;
int leftHeight = (left == null ? 0 : left.height());
int rightHeight = (right == null ? 0 : right.height());
heightOfTree = leftHeightrightHeight?rightHeight:leftHeight;
return 1 + heightOfTree;
}
//如果对象不在树中,结果返回-1;否则结果返回该对象在树中所处的层次,规定根节点为第一层
public int level(Object object)
{
int levelInTree;
if(this == null)
return -1;
if(object == data)
return 1;//规定根节点为第一层
int leftLevel = (left == null?-1:left.level(object));
int rightLevel = (right == null?-1:right.level(object));
if(leftLevel0rightLevel0)
return -1;
levelInTree = leftLevelrightLevel?rightLevel:leftLevel;
return 1+levelInTree;
}
//将树中的每个节点的孩子对换位置
public void reflect()
{
if(this == null)
return;
if(left != null)
left.reflect();
if(right != null)
right.reflect();
BinTree temp = left;
left = right;
right = temp;
}
// 将树中的所有节点移走,并输出移走的节点
public void defoliate()
{
if(this == null)
return;
//若本节点是叶节点,则将其移走
if(left==nullright == null)
{
System.out.print(this + " ");
data = null;
return;
}
//移走左子树若其存在
if(left!=null){
left.defoliate();
left = null;
}
//移走本节点,放在中间表示中跟移走...
String innerNode += this + " ";
data = null;
//移走右子树若其存在
if(right!=null){
right.defoliate();
right = null;
}
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
BinTree e = new BinTree("E");
BinTree g = new BinTree("G");
BinTree h = new BinTree("H");
BinTree i = new BinTree("I");
BinTree d = new BinTree("D",null,g);
BinTree f = new BinTree("F",h,i);
BinTree b = new BinTree("B",d,e);
BinTree c = new BinTree("C",f,null);
BinTree tree = new BinTree("A",b,c);
System.out.println("前序遍历二叉树结果: ");
tree.preOrder(tree);
System.out.println();
System.out.println("中序遍历二叉树结果: ");
tree.inOrder(tree);
System.out.println();
System.out.println("后序遍历二叉树结果: ");
tree.postOrder(tree);
System.out.println();
System.out.println("层次遍历二叉树结果: ");
tree.LayerOrder(tree);
System.out.println();
System.out.println("F所在的层次: "+tree.level("F"));
System.out.println("这棵二叉树的高度: "+tree.height());
System.out.println("--------------------------------------");
tree.reflect();
System.out.println("交换每个节点的孩子节点后......");
System.out.println("前序遍历二叉树结果: ");
tree.preOrder(tree);
System.out.println();
System.out.println("中序遍历二叉树结果: ");
tree.inOrder(tree);
System.out.println();
System.out.println("后序遍历二叉树结果: ");
tree.postOrder(tree);
System.out.println();
System.out.println("层次遍历二叉树结果: ");
tree.LayerOrder(tree);
System.out.println();
System.out.println("F所在的层次: "+tree.level("F"));
System.out.println("这棵二叉树的高度: "+tree.height());
}
java如何实现文件搜索功能
java实现文件搜索主要使用file类和正则表达式,如下示例:
package com.kiritor.util;
import java.io.File;
import java.io.FileFilter;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
/**
* 文件的相关操作类
*
* @author Kiritor
*/
public class FileOperation {
private static String contentPath;
private static String filePath;
private static File[] fileList = null;// 保存文件列表,过滤掉目录
public FileOperation() {
}
/** 构造函数的参数是一个目录 */
public FileOperation(String path) {
File file = new File(path);
if (file.isDirectory())
this.contentPath = path;
else
this.filePath = path;
}
/**获取文件列表*/
public static File[] getFiles() {
if (contentPath == null) {
File file = new File(filePath);
fileList = new File[1];
fileList[0] = file;
return fileList;
}
fileList = new File(contentPath).listFiles(new FileFilter() {
/**使用过滤器过滤掉目录*/
@Override
public boolean accept(File pathname) {
if(pathname.isDirectory())
{
return false;
}else
return true;
}
});
return fileList;
}
/** 对当前目录下的所有文件进行排序 */
public static File[] sort() {
getFiles();
Arrays.sort(fileList, new FileComparator());
return fileList;
}
public static void tree(File f, int level) {
String preStr = "";
for(int i=0; ilevel; i++) {
preStr += " ";
}
File[] childs = f.listFiles();
//返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件。
for(int i=0; ichilds.length; i++) {
System.out.println(preStr + childs[i].getName());
if(childs[i].isDirectory()) {
tree(childs[i], level + 1);
}
}
}
// 提供一个"比较器"
static class FileComparator implements java.util.ComparatorFile {
@Override
public int compare(File o1, File o2) {
// 按照文件名的字典顺序进行比较
return o1.getName().compareTo(o2.getName());
}
}
}
java使用clipre的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java使用cmd为什么找不到文件、java使用clipre的信息别忘了在本站进行查找喔。