包含javaclcr的词条

博主:adminadmin 2023-01-12 09:30:06 693

今天给各位分享javaclcr的知识,其中也会对进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

高分求教java读取XML文档问题..

首先搞清楚解析XML的方法都有哪些:

1. Dom4J 使用接口和抽象基本类方法。大量使用了API中的Collections 类

2. JDom 使用具体类。大量使用了API中的Collections类。自身不包含解析器,通常使用SAX2解析器来解析和验证输入XML文档

3. SAX 类似于流媒体的优点。采用了基于事件的模型

4. Dom 基于树或基于对象,树在内存中是持久

给你Dom4J的例子:

private void parseUseDom4J() {

long startDT = System.currentTimeMillis();

try {

File file = new File(FILE_NAME_PATH);

SAXReader saxReader = new SAXReader();

Document docuemnt = saxReader.read(file);

Element root = docuemnt.getRootElement();

Element foo;

for (Iterator iterator = root.elementIterator("value"); iterator.hasNext();) {

foo = (Element) iterator.next();

System.out.println(foo.elementText(NAME_C));

System.out.println(foo.elementText(NAME_E));

System.out.println(foo.elementText(ADDRESS));

System.out.println(foo.elementText(ZIP));

System.out.println(foo.elementText(WEBSITE));

System.out.println(foo.elementText(EDITOR));

System.out.println(".............................................");

}

System.out.println("解析完毕!");

} catch (Exception ex) {

ex.printStackTrace();

}

System.out.println(System.currentTimeMillis() - startDT);

}

Java写一个计算器 控制台输入算式 可以实现先乘除后加减 没有括号功能 只有加减乘除

你自己研究下,这个代码,别人写的:

import java.util.Scanner;

public class T {

public static void main(String[] args) {

        Scanner scan  = new Scanner(System.in);

//String str = "54151+819*5165+15-48/189+5961";

        System.out.println("请输入算式,按回车键结束:");

        String str = scan.nextLine();

System.out.println(cacComplex(str));

}

private static double cacComplex(String str) {

if (str.equals(""))

return 0;

System.out.println("CAC:" + str);

str = str.replaceAll("[\\[\\{]", "(").replaceAll("[\\]\\}]", ")");

int cl = str.lastIndexOf('(');

if (cl == -1)

return cac(str);

int cr = str.indexOf(')', cl);

String left = str.substring(0, cl);

String right = str.substring(cr + 1);

String middle = str.substring(cl + 1, cr);

return cacComplex(left + cac(middle) + right);

}

public static double cac(String str) {

if (str.equals(""))

return 0;

int ml = str.indexOf('*');

int dl = str.indexOf('/');

if (ml == -1  dl == -1) {

return cacNoMD(str);

}

int index = ml == -1 ? dl : ml;

// 4+5*6*7+8

String left = str.substring(0, index);// 4+5

String m1 = lastNumber(left);

left = left.substring(0, left.length() - m1.length());

String right = str.substring(index + 1);// 6*7+8

String m2 = firstNumber(right);// m2:6

right = right.substring(m2.length());// *7+8

double d1 = Double.parseDouble(m1);

double d2 = Double.parseDouble(m2);

double tmp = 0;

if (index == ml) {

tmp = d1 * d2;

} else if (index == dl) {

tmp = d1 / d2;

}

return cac(left + tmp + right);

}

private static String lastNumber(String str) {

StringBuilder sb = new StringBuilder();

for (int i = str.length() - 1; i = 0; i--) {

char c = str.charAt(i);

if (!Character.isDigit(c)  c != '.')

break;

sb.append(c);

}

return sb.reverse().toString();

}

private static String firstNumber(String str) {

StringBuilder sb = new StringBuilder();

for (char c : str.toCharArray()) {

if (!Character.isDigit(c)  c != '.')

break;

sb.append(c);

}

return sb.toString();

}

private static double cacNoMD(String str) {

double ret = 0;

StringBuilder sb = new StringBuilder();

char sign = '+';

for (char c : (str + "+").toCharArray()) {

if (!Character.isDigit(c)  c != '.') {

if (sb.length() == 0)

continue;

double tmp = Double.parseDouble(sb.toString());

if (sign == '+') {

ret += tmp;

} else {

ret -= tmp;

}

sb = new StringBuilder();

sign = c;

} else {

sb.append(c);

}

}

return ret;

}

}

请输入算式,按回车键结束:

54151+819*5165+15-48/189+5961

CAC:54151+819*5165+15-48/189+5961

4290261.746031746

求字符串解析四则运算的Java代码

package samples;

/**

* @author sghitxia

*

*/

public class C {

public static void main(String[] args) {

String str = "(1+{1+2+3+[2+(4+5)+(9+3*7*6)]}+2+{3*5+[2+(4+5)+(9+3)]}+2)";

System.out.println(cacComplex(str));

}

private static double cacComplex(String str) {

if (str.equals(""))

return 0;

System.out.println("CAC:" + str);

str = str.replaceAll("[\\[\\{]", "(").replaceAll("[\\]\\}]", ")");

int cl = str.lastIndexOf('(');

if (cl == -1)

return cac(str);

int cr = str.indexOf(')', cl);

String left = str.substring(0, cl);

String right = str.substring(cr + 1);

String middle = str.substring(cl + 1, cr);

return cacComplex(left + cac(middle) + right);

}

public static double cac(String str) {

if (str.equals(""))

return 0;

int ml = str.indexOf('*');

int dl = str.indexOf('/');

if (ml == -1 dl == -1) {

return cacNoMD(str);

}

int index = ml == -1 ? dl : ml;

// 4+5*6*7+8

String left = str.substring(0, index);// 4+5

String m1 = lastNumber(left);

left = left.substring(0, left.length() - m1.length());

String right = str.substring(index + 1);// 6*7+8

String m2 = firstNumber(right);// m2:6

right = right.substring(m2.length());// *7+8

double d1 = Double.parseDouble(m1);

double d2 = Double.parseDouble(m2);

double tmp = 0;

if (index == ml) {

tmp = d1 * d2;

} else if (index == dl) {

tmp = d1 / d2;

}

return cac(left + tmp + right);

}

private static String lastNumber(String str) {

StringBuilder sb = new StringBuilder();

for (int i = str.length() - 1; i = 0; i--) {

char c = str.charAt(i);

if (!Character.isDigit(c) c != '.')

break;

sb.append(c);

}

return sb.reverse().toString();

}

private static String firstNumber(String str) {

StringBuilder sb = new StringBuilder();

for (char c : str.toCharArray()) {

if (!Character.isDigit(c) c != '.')

break;

sb.append(c);

}

return sb.toString();

}

private static double cacNoMD(String str) {

double ret = 0;

StringBuilder sb = new StringBuilder();

char sign = '+';

for (char c : (str + "+").toCharArray()) {

if (!Character.isDigit(c) c != '.') {

if (sb.length() == 0)

continue;

double tmp = Double.parseDouble(sb.toString());

if (sign == '+') {

ret += tmp;

} else {

ret -= tmp;

}

sb = new StringBuilder();

sign = c;

} else {

sb.append(c);

}

}

return ret;

}

}

java语言中cl,rn,ct分别是什么意思啊?

你所说的这些 cl, rn, ct 都不是 Java 中的代码。

这是 类似 HTML 中表单信息的一些内容。

具体什么含义,百度自己定义。

建议先学会 HTML 表单,你就明白了。

javaclcr的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于、javaclcr的信息别忘了在本站进行查找喔。