小编Som*_*ent的帖子

Java是否具有StringStream等价物?

所以我想在做C++很长一段时间后回到Java,我决定通过将我的C++程序重写为Java来练习.现在,在我的Min Max Program中,我有以下几行代码:

  //C++ Code Sample
  getline(cin,mystr);
  stringstream(mystr) >> value;

  max = value;
  min = value;

  stringstream stream(mystr);

      while(stream >> value)
      {
        if(value > max)
        {
          max = value;
        }
        else if(value < min)
        {
          min = value;
        }
      }
Run Code Online (Sandbox Code Playgroud)

现在,getline相当于使用Scanner类,但StringStream是什么?搜索时我看到有人提到InputStream,但这似乎与从文件中读取有关,例如:http://www.tutorialspoint.com/java/io/inputstream_read.htm.

因此,我想知道我是否可以获得类似的功能?我当然也可以要求用户指定他们希望键入多少输入,然后只填充一个数组; 但这似乎很尴尬.

更新:

我创建了一个快速的工作,其工作原理如下:

  String in = "";

            while(true)
            {

                in = input.nextLine();
                if(in.equalsIgnoreCase("DONE"))
                {
                    break;
                }
                value = Integer.parseInt(in);

                if(value > max)
                {
                    max = value;
                }
                else if(value < min)
                {
                    min = …
Run Code Online (Sandbox Code Playgroud)

java

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

相同的代码,相同的浏览器,用户的不同行为

我有一段JS代码解析文件,然后将数组与键值对映射关联,然后通过它迭代它以使用.includes方法找到正确的城市名称.我的问题是最后一个字段(有问题的函数被调用)在我的Chrome和Firefox上运行良好.由于某些原因,我的小组成员无法正常工作.

这是执行迭代的JS片段:

编辑:这是文件的打开方式:

var rawFile = new XMLHttpRequest();
    rawFile.open("GET", "../data/myFile.txt", false);
Run Code Online (Sandbox Code Playgroud)
for (var i = 0; i < allText.length; i++) {
  if (i % 2 == 0) {
    myMap[allText[i]] = allText[i + 1];
  }
}

var city = document.getElementById("city").value;
for (var key in myMap) {
  if (myMap.hasOwnProperty(key)) {
    if (myMap[key].toLowerCase().includes(city.toLowerCase())) {
      document.getElementById("city").value = myMap[key]
      document.getElementById("zipcode").value = key;
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

这是调用它的html部分:

<label for="myLabel">City: </label>
<input type="text" name="myLabel" id="myLabel" onblur="readTextFile()">
Run Code Online (Sandbox Code Playgroud)

究竟是什么问题以及我如何对它进行故障排除,因为它对我来说毫无意义,来自Java和C++的世界,我以前从未遇到过这样的问题.如果你想知道为什么JS可能有点难看,那就是一个老师的学生认为展示W3Schools的例子相当于好的教学的结果.

html javascript

8
推荐指数
1
解决办法
192
查看次数

Cout不是std的成员,也不是c ++的其他问题

请允许我在前言中说我确实已经包含(也适用于字符串,endl,而且字面上一切都不起作用); 就语法而言,我的IDE没有显示任何错误; 我无法理解为什么会出现这个问题?它在我写的其他一些C++代码示例中工作正常.

所以我想做一个小游戏,公牛和奶牛.我的主要代码如下:

#include <iostream>

#include "stdafx.h"
#include "BullsAndCows.h"



using std::cout;
using std::endl;
using std::cin;
using std::string;

int main()
{

    string userInput = "";
    bool playAgain = false;

    int gameDiff;

    constexpr char * GREETING = "Welcome to Bulls and Cows! Please enter the difficulty level: (1) Easy, (2) Medium, (3) Hard";

    cin >> gameDiff;

    do
    {
        BullsAndCows *bc = new BullsAndCows();
        bc->playGame(gameDiff);

    } while (playAgain);


    constexpr char * INFORMATION = "Total Word Length  is: ";

    //Introduce the game.

    cout …
Run Code Online (Sandbox Code Playgroud)

c++ namespaces c++11

2
推荐指数
1
解决办法
3890
查看次数

C# Docker MongoDB 30000ms 后超时

我对 docker 相当陌生,并从中运行 mongo 。但是,当我想写入它时遇到以下错误。当我纯粹在本地环境中使用 mongo 时(即在本地运行 mongodb),这工作得非常好。

我在 docker-compose-test 文件中引用 mongo 的方式如下:

mongo:
    image: mongo
    restart: always
    ports:
       - 27017:27017    
    environment:
       MONGO_INITDB_ROOT_USERNAME: username
       MONGO_INITDB_ROOT_PASSWORD: password
Run Code Online (Sandbox Code Playgroud)

然后在我的 appsettings.config 文件中,我设置连接字符串如下:

"MongoConnectionString": "mongodb://username:password@localhost:27017"
Run Code Online (Sandbox Code Playgroud)

需要注意的一件事是,我相当肯定这实际上确实会使用这些凭据启动它的一个实例,因为如果我尝试使用具有本地主机主机的 Mongo 罗盘管理器以及相应的密码和当我的 docker compose 未启动并运行时,它将无法连接,当它运行时,它可以正常工作。

也就是说,在我的代码中,我按如下方式引导我的 mongo 上下文:

// Create mongo class map
Mapper.CreateMaps();  
                          
string connectionString = configuration.GetValue<string>("ConnectionStrings:MongoConnectionString");

string mongoDataBase = configuration.GetValue<string>("MongoDataBases:MongoDataBaseName");
    
_client = new MongoClient(connectionString);
_database = _client.GetDatabase(mongoDataBase);
Run Code Online (Sandbox Code Playgroud)

然后我尝试将所需的数据插入到我的集合中(这是失败的地方),如下所示:


// GetTypedMongoCollection returns a IMongoCollection<T>
var collection = mongoContext.GetTypedMongoCollection<MyCollection>(); 
 
Run Code Online (Sandbox Code Playgroud)

错误信息是:

使用 CompositeServerSelector{ Selectors = MongoDB.Driver.MongoClient+AreSessionsSupportedServerSelector, LatencyLimitingServerSelector {AllowedLatencyRange = …

c# mongodb docker docker-compose

2
推荐指数
1
解决办法
3360
查看次数

更改文本框架颜色 - 应用程序.很冷

好的,所以我们的任务是创建一个猜测游戏,用户输入一个数字,文本前景应该变为红色,如果它太高,蓝色,如果它太低,或绿色,如果它是准确的.

我们的老师发布了代码,这很简单,我可以理解它.问题是,当我尝试重新格式化我需要的东西时,我得到了JFrame,我得到了我可以输入的文本字段,但是当我点击提交它就像冻结一样.我想它与动作监听器的编写方式有关,但我不确定.

任何帮助将是欣赏.

这是我的代码,编辑所以只显示特定部分"

 button.addActionListener(
        new ActionListener() 
        {
            @Override
            public void actionPerformed(ActionEvent arg0) 
            {


                userInput = keyboard.next();

                if(Integer.parseInt(userInput) > randomNumber)
                    {
                        tf.setForeground(Color.red);;
                    }
                    else if(Integer.parseInt(userInput) < randomNumber)
                    {
                        tf.setForeground(Color.blue);
                    }
                    else if(Integer.parseInt(userInput) == randomNumber)
                    {
                        tf.setForeground(Color.green);
                    }

                }
            }
           );
    }
Run Code Online (Sandbox Code Playgroud)

java swing jframe jtextfield event-dispatch-thread

1
推荐指数
1
解决办法
57
查看次数

使用导航控制器时保持标题视图

我有一个标签,我作为标题放在屏幕的顶部.当我通过嵌入导航控制器添加导航控制器时,我希望保持可见性并仍然存在.

我主要使用故事板来帮助我创建UI.

这是没有导航控制器的应用程序的样子:

应用程序截图与橙色标题

但是,如果我添加导航控制器,我会得到以下内容:

应用程序截图导航栏已替换橙色标题

当然,我想维护一个导航控制器,这样我就不必使用自己的控制导航的按钮.据我了解,目前市场徽标隐藏在导航控制器后面.

user-interface cocoa-touch uinavigationcontroller ios

0
推荐指数
1
解决办法
332
查看次数