小编Eng*_*uad的帖子

检查布尔数组中的所有值是否为真的最优雅的方法是什么?

我在java中有一个布尔数组:

boolean[] myArray = new boolean[10];
Run Code Online (Sandbox Code Playgroud)

检查所有值是否为真的最优雅的方法是什么?

java arrays boolean

54
推荐指数
7
解决办法
9万
查看次数

将String转换为字节数组,然后再转换回原始String

是否可以将字符串转换为字节数组,然后将其转换回Java或Android中的原始字符串?

我的目标是将一些字符串发送到微控制器(Arduino)并将其存储到EEPROM(仅1 KB).我试图使用MD5哈希,但它似乎只是单向加密.我该怎么做才能解决这个问题?

java hash android byte arduino

51
推荐指数
2
解决办法
10万
查看次数

通过套接字手动发送HTTP请求

当我通过套接字发送正常的HTTP请求时,服务器不响应OK响应.我从FireFox复制了HTTP标头.这是代码:

Socket s = new Socket(InetAddress.getByName("stackoverflow.com"), 80);
PrintWriter pw = new PrintWriter(s.getOutputStream());
pw.print("GET / HTTP/1.1");
pw.print("Host: stackoverflow.com");
pw.flush();
BufferedReader br = new BufferedReader(new InputStreamReader(s.getInputStream()));
String t;
while((t = br.readLine()) != null) System.out.println(t);
br.close();
Run Code Online (Sandbox Code Playgroud)

但是,这是我收到的回复:

HTTP/1.0 408 Request Time-out
Cache-Control: no-cache
Connection: close
Content-Type: text/html

<html><body><h1>408 Request Time-out</h1>
Your browser didn't send a complete request in time.
</body></html>
Run Code Online (Sandbox Code Playgroud)

我知道我可以通过使用URL.openStream(),但为什么服务器在我手动发送时不识别HTTP请求?

java sockets network-programming http http-headers

49
推荐指数
3
解决办法
9万
查看次数

JOptionPane获取密码

JOptionPane可用于从用户获取字符串输入,但在我的情况下,我想在中显示密码字段showInputDialog.

我需要的方式是应该屏蔽用户给出的输入并且返回值必须在char[].我需要一个带有消息,密码字段和两个按钮的对话框.可以这样做吗?谢谢.

java passwords user-interface swing joptionpane

47
推荐指数
2
解决办法
6万
查看次数

在对int进行类型转换时,C/C++ bool类型总是保证为0或1吗?

许多编译器似乎只保留bool值中的0或1,但我不确定这将始终有效:

int a = 2;
bool b = a;
int c = 3 + b; // 4 or 5?
Run Code Online (Sandbox Code Playgroud)

c c++ boolean

44
推荐指数
4
解决办法
4万
查看次数

如何用逗号而不是空格分割列表

我想一个文本用逗号分开,没有空间 in for foo in list.假设我有一个CSV_File包含以下文本的CSV文件:

Hello,World,Questions,Answers,bash shell,script
...
Run Code Online (Sandbox Code Playgroud)

我使用下面的代码将它分成几个单词:

for word in $(cat CSV_File | sed -n 1'p' | tr ',' '\n')
do echo $word
done
Run Code Online (Sandbox Code Playgroud)

它打印:

Hello
World
Questions
Answers
bash
shell
script
Run Code Online (Sandbox Code Playgroud)

但我希望它用逗号分隔文本而不是空格:

Hello
World
Questions
Answers
bash shell
script
Run Code Online (Sandbox Code Playgroud)

我怎样才能在bash中实现这一目标?

linux csv bash shell split

43
推荐指数
6
解决办法
9万
查看次数

我可以获得课程的所有方法吗?

假设我有一个.class文件,我可以获得该类中包含的所有方法吗?

java methods class

41
推荐指数
3
解决办法
9万
查看次数

更新Android标签图标

我有一个活动,其中包含一组TabSpec,每个TabSpec都有一个listview,其中包含选项卡要显示的项目.创建每个TabSpec时,我设置一个图标显示在选项卡标题中.

TabSpecs以这种方式在一个setupTabs()循环创建适当数量的选项卡的方法中创建:

TabSpec ts = mTabs.newTabSpec("tab");
ts.setIndicator("TabTitle", iconResource);

ts.setContent(new TabHost.TabContentFactory(
{
    public View createTabContent(String tag)
    {
        ... 
    }            
});
mTabs.addTab(ts);
Run Code Online (Sandbox Code Playgroud)

有几个实例我希望能够在执行程序期间更改每个选项卡中显示的图标.目前我正在删除所有选项卡,并再次调用上面的代码来重新创建它们.

mTabs.getTabWidget().removeAllViews();
mTabs.clearAllTabs(true);
setupTabs();
Run Code Online (Sandbox Code Playgroud)

有没有办法替换正在显示的图标而不删除并重新创建所有选项卡?

java android android-tabhost

40
推荐指数
5
解决办法
4万
查看次数

在Java中使用大括号的奇怪行为

当我运行以下代码时:

public class Test {

  Test(){
    System.out.println("1");
  }

  {
    System.out.println("2");
  }

  static {
    System.out.println("3");
  }

  public static void main(String args[]) {
    new Test();
  }
}
Run Code Online (Sandbox Code Playgroud)

我希望按此顺序获得输出:

1
2
3
Run Code Online (Sandbox Code Playgroud)

但我得到的是相反的顺序:

3
2
1
Run Code Online (Sandbox Code Playgroud)

任何人都可以解释为什么它以相反的顺序输出?

================

另外,当我创建多个实例时Test:

new Test();
new Test();
new Test();
new Test();
Run Code Online (Sandbox Code Playgroud)

静态块在第一次执行.

java braces

40
推荐指数
5
解决办法
2251
查看次数

在哪里停止/销毁Android服务类中的线程?

我通过以下方式创建了一个线程服务:

public class TCPClientService extends Service{  
...

@Override
public void onCreate() {
    ...
    Measurements = new LinkedList<String>();
    enableDataSending();    
}

@Override
public IBinder onBind(Intent intent) {
    //TODO: Replace with service binding implementation
    return null;
}

@Override
public void onLowMemory() {
    Measurements.clear();
    super.onLowMemory();
}

@Override
public void onDestroy() {
    Measurements.clear();
    super.onDestroy();
    try {
        SendDataThread.stop();
    } catch(Exception e){
        ...     
    }

}

private Runnable backgrounSendData = new Runnable() {

    public void run() {
        doSendData();
    }
};

private void enableDataSending() {
    SendDataThread = new Thread(null, …
Run Code Online (Sandbox Code Playgroud)

java service multithreading android

38
推荐指数
2
解决办法
8万
查看次数