我想使用BufferedReader在控制台中输入多行文本,当我点击"Enter"以查找整个文本长度的总和时.问题是,我似乎进入了一个无限循环,当我按下"Enter"时,程序没有结束.我的代码如下:
InputStreamReader instream = new InputStreamReader(System.in);
BufferedReader buffer = new BufferedReader(instream);
line= buffer.readLine();
while (line!=null){
length = length + line.length();
line= buffer.readLine();
}
Run Code Online (Sandbox Code Playgroud)
你能告诉我我做错了什么吗?
我想声明一个要包含在复杂类型声明中的元素,并且该元素具有强制属性:"option = MyOption",但"option"属性的值可以是任何值,具体取决于上下文.
也就是说:在使用包含此元素的复杂类型的任何文档中,具有某些未知值的属性"选项"应该是必需的.
例:
<xs:element name="SpecialOption" type="xs:string"/>
<xs:complexType name="SpecialOptions">
<xs:sequence>
<xs:element ref="SpecialOption" minOccurs="1" maxOccurs="100"/>
<xs:element ref="XXX"/>
</xs:sequence>
</xs:complexType>
Run Code Online (Sandbox Code Playgroud)
在这种情况下,复杂类型"SpecialOptions"中的"SpecialOption"元素应具有此必需属性.
我不知道如何在XSD中声明元素的强制属性,或者如何指定属性必须具有尚未知的值.
如何将OpenGl显示附加到JFrame,以便当我关闭JFrame时会破坏显示?到目前为止,这是我的代码:
package test.core;
import java.awt.BorderLayout;
import java.awt.Canvas;
import java.awt.Color;
import java.awt.Component;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.SwingUtilities;
import org.lwjgl.LWJGLException;
import org.lwjgl.opengl.Display;
import org.lwjgl.opengl.DisplayMode;
import org.lwjgl.opengl.GL11;
import static org.lwjgl.opengl.GL11.*;
public class Main {
private static CreateCanvas canvas;
private static CreateFrame frame;
private static int width = 800;
private static int height = 600;
public static void main(String[] args) throws InterruptedException {
startFrames();
startDisplay();
}
public …Run Code Online (Sandbox Code Playgroud) 我需要一个xml架构,它验证一个空节点和一个8位数的节点为true.所以我用以下简单类型定义了一个XML-Schema:
<xs:simpleType name="LeererStringOder8Zeichen">
<xs:restriction base="xs:string">
<xs:pattern value="(^$|\d{8})"/>
</xs:restriction>
</xs:simpleType>
Run Code Online (Sandbox Code Playgroud)
我已经使用java.util.regex和Xerces的内部RegularExpression类尝试了这个正则表达式.两者都归于真.但是当我在我的WS中使用这个simpleType(使用CXF实现)时,当我提交一个空字符串(例如)时,我得到验证错误.为什么?有没有人有想法,如何更改我的架构,它接受一个空标签和一个包含8位数的标签?
感谢帮助,安德烈亚斯
是否有任何API可以在java中以编程方式生成XSD.我需要从Json-Schema生成XSD,我将阅读Json Schema并基于我在解析期间遇到的元素需要创建适当的XSD元素.因此,如果有任何可以使用XSD元素的API,它将有助于我在开发过程中.
我有一个HashMap:
private Map<String,Integer> matchesWonByTeam= new HashMap<String,Integer>();
Run Code Online (Sandbox Code Playgroud)
使用集合和比较器的最简单和最简单的方法是什么?
我似乎找不到解决方法。
我有两条路径,例如:
D:/Views/me/a.b 和
D:/Views/me/a
要么
D:/Views/me/a.b 和
D:/Views/me/a.b/x/y
我必须确保一个文件/目录不是另一个的子目录。我已经尝试过了,Contains但是在这种情况下对我不起作用?
我试图计算总和为n的1,5,10和25的组合数.鉴于我不想重复(例如1 + 5 = 6和5 + 1 = 6).我正在使用hashSet.我实现了一个名为的类ResultSet,它在解决方案中保存了1,5,10和25的数量,并且我覆盖了该equals方法.但是,由于某种原因,我的解决方案hashSet不断返回重复值.为什么?
import java.util.HashSet;
public class Solution {
public static void main(String[] args) {
int N = 6;
int combinationsSolution = new Combine(N).getSolution();
System.out.println("N= " + N + " Number of solutions= " + combinationsSolution);
}
}
class Combine {
private int solution;
private int n;
private HashSet<ResultSet> cacheUnordered = new HashSet<ResultSet>();
public Combine(int N) {
this.n = N;
this.solution = solve(n);
}
public int …Run Code Online (Sandbox Code Playgroud) FlowLayout在最后一个组件的右侧添加新组件.我的意思是它从左到右排列组件(>>>>),但我需要从右到左排列(<<<<).可能吗?
java ×8
xsd ×3
swing ×2
collections ×1
comparator ×1
dictionary ×1
equals ×1
filepath ×1
flowlayout ×1
hashcode ×1
hashset ×1
jframe ×1
jsonschema ×1
lwjgl ×1
opengl ×1
parsing ×1
path ×1
regex ×1
schema ×1
sorting ×1
validation ×1
xml ×1