RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / user-306402

Александр's questions

Martin Hope
Александр
Asked: 2023-02-17 23:36:20 +0000 UTC

返回枚举值

  • 5

假设我在架构中有以下枚举:

enum Role {
  USER  @map("Пользователь")
  JUDGE @map("Судья")
  ADMIN @map("Администратор")
  @@map("roles")
}

我向数据库发出请求并得到以下结果

{
  type: "USER"
}

问题是:是否有可能以某种方式获得我用俄语指示的值(它以这种形式存储在数据库中)。很明显,您可以自己整理答案并显示正确的答案,但也许还有更正确的选项?

javascript
  • 1 个回答
  • 22 Views
Martin Hope
Александр
Asked: 2022-08-24 19:35:42 +0000 UTC

webpack css 文件连接

  • 0

我正在尝试处理 css 模块,但首先,只需连接项目中的 css 文件。有以下代码:

包.json

{
"name": "test-css-modules",
"version": "0.0.0",
"description": "",
"main": "index.js",
"scripts": {
    "start": "webpack"
},
"author": "",
"license": "ISC",
"devDependencies": {
    "babel-core": "^6.26.3",
    "babel-loader": "^8.2.5",
    "babel-preset-env": "^1.7.0",
    "css-loader": "^6.7.1",
    "mini-css-extract-plugin": "^2.6.1",
    "style-loader": "^3.3.1",
    "webpack": "^5.73.0",
    "webpack-cli": "^4.10.0"
}
}

webpack.config.js

const MiniCssExtractPlugin = require('mini-css-extract-plugin');
const path = require('path');

module.exports = {
entry: './src',
output: {
    path: path.resolve(__dirname, 'build'),
    filename: 'bundle.js',
},
mode: 'development',
module: {
    rules: [
        {
            test: /\.js/,
            use: 'babel-loader',
            include: __dirname + '/src',
        },
        {
            // test: /\.css/,
            test: /\.css$/i,
            use: [MiniCssExtractPlugin.loader, 'css-loader'],
            // use: ['style', 'css'],
            // use: ['style-loader', 'css-loader'],
            include: __dirname + '/src',
        },
    ],
},
};

index.js

// import './app.css';
require('./app.css');

应用程序.css

body {
    background-color: bisque;
}

当我编译时,我得到以下信息:

asset bundle.js 3.19 KiB [emitted] (name: main)
./src/app.css 134 bytes [built] [code generated] [1 error]

ERROR in ./src/app.css 1:5
Module parse failed: Unexpected token (1:5)
You may need an appropriate loader to handle this file type, currently no loaders are 
configured to process this file. See https://webpack.js.org/concepts#loaders
> body {
|       background-color: bisque;
| }
@ ./src/index.js 6:0-20

webpack 5.73.0 compiled with 1 error in 125 ms

在没有 css、常规 js 的情况下进行测试时,一切正常。尝试设置 css 连接错误。我尝试了不同的选项,它们在代码中被注释掉,但没有任何帮助。告诉我我做错了什么

javascript css
  • 2 个回答
  • 24 Views
Martin Hope
Александр
Asked: 2022-09-07 14:55:23 +0000 UTC

在 github 上发布项目 [关闭]

  • -2
关闭。这个问题需要具体说明。目前不接受回复。

想改进这个问题? 重新构建问题,使其只关注一个问题。

6 个月前关闭。

改进问题

在学习 react 的时候,我认为将一个创建良好的项目上传到 github 并在那里设置页面是一个好主意。但是在工作的时候,我没有使用react api,而是从nodejs工作,使用了第三方库,创建了文件夹和文件结构。据我了解,有一个构建功能可以链接创建的项目,从逻辑上讲,我可以在任何地方从程序集中运行项目。也许我对某事有误,我希望有人向我解释。

现在,我有几个问题:

  1. 是否可以托管这样的项目或者我是否需要使用 react api?
  2. 如果你使用api,是不是代码必须放在一个文件中?
  3. 那么将这些项目放在 github 上如何更正确呢?(正是为了证明该项目使用了某些技术)
  4. CORS会有问题吗?
reactjs
  • 1 个回答
  • 10 Views
Martin Hope
Александр
Asked: 2022-05-15 20:31:14 +0000 UTC

切换到导入模块

  • 1

需要连接模块,但是禁止在客户端使用require。由于不可能混合 require 和 import,我决定在整个项目中替换 import。我收到多个错误,我无法弄清楚我做错了什么。有2个文件:

index.js

import express from 'express';
import * as router from './router.js';
const app = express();
app.use(router); // тут падает ошибка, описание в конце

路由器.js

import express from 'express';
const router = express.Router();
router.get('/', (_request, response) => {
    response.sendFile(`${__dirname}/html/index.html`);
});
module.exports = router;

错误如下:

TypeError: app.use() 需要一个中间件函数

问题:如何正确导出和导入文件、函数?

添加

cookies.js文件

export function setCookie(name, value, options = {}) {
   // ...
}
export function getCookie(request, name) {
   // ...
}

服务器工作正常getCookie,没有问题。在客户端,我需要 setCookie,我通过 html 连接它:

<script type="module" src="/js/cookies/cookies.js" defer></script>

该页面的脚本文件也包括在内:

<script src="/js/cookies/home.js" defer></script>

home.js我从using调用该函数setCookie('USER', result[0].id, false)。写一个错误

ReferenceError:未定义 setCookie

那么如何从客户端连接文件呢?

javascript
  • 1 个回答
  • 10 Views
Martin Hope
Александр
Asked: 2022-01-21 20:49:29 +0000 UTC

处理 AJAX 请求

  • 0

以下文件可用: router.js

router.post('/database/sqlBilder', jsonParser, function (request, response) {
    if (!request.body) return response.sendStatus(400);
    sqlBilder(request.body.code, request.body.table, [request.body.login, request.body.password]);
});

handler.js

let user = JSON.stringify({ 'code': code,
                            'table': table, 
                            'login': args[0].value, 
                            'password': args[1].value });
                                    
let response = await fetch('./database/sqlBilder', {
    method: 'POST',
    body: user,
    headers: {
        'Content-Type': 'application/json',
        'Accept': 'application/json'
    }
})

if (response.ok) {
    let text = response.json();
    console.log(text);
    alert("Запрос выполнен: " + response.status);
} else {
    alert("Ошибка HTTP: " + response.status);
}

sqlbuilder.js

query = `SELECT * FROM ${table} WHERE`;
// ...
query += ` id = '${args[0]}';`;
pool.execute(query, (err, results)=>{
  if (err) { 
      throw err;
  }
  else{
      console.log('Из базы получена запись');
      console.log(results[0].id);
  }

  return JSON.stringify({ 'id': results[0].id});
});

底线是这样的:在 html 页面上调用 AJAX 请求,将数据传输给它,请求转到处理程序,在处理程序中对其进行解析并将其数据转到导入的函数,在那里执行一个 sql 查询到数据库,它成功地向我发出收到正确 ID 的信号。到目前为止,一切正常。据我了解,我不仅要执行一个sql查询,还要返回它的结果,当然,数据没有返回,我看到了Ошибка HTTP: 500。

我想知道如何返回并接受这个请求的结果?

javascript
  • 1 个回答
  • 10 Views
Martin Hope
Александр
Asked: 2022-01-10 14:55:12 +0000 UTC

在服务器上获取客户端数据

  • 1

有一个 index.html 文件没有什么特别的,但是有一个homePageHadnler.js.
该文件包含几个用于检查数据输入的函数,当所有检查都成功通过时,必须调用另一个文件中包含用于生成 SQL 查询的函数的方法。

homePageHadnler.js 代码:

function handlerReg() {
    const login = document.forms.reg.login
    const password = document.forms.reg.password

    const args = [login, password]

    //..

    checkErrors(args)
}

async function checkErrors(args) {
    const errors = document.forms.reg.querySelectorAll('.error')

    if (errors.length === 0) {
        let response = await fetch('./database/sqlBilder', {
        method: 'POST',
        body: 'name=Vasya'
        })

        if (response.ok) {
            alert("Запрос выполнен: " + response.status);
        } else {
            alert("Ошибка HTTP: " + response.status);
        }
    }
}

包含的文件代码:

const pool = require('./database/pool')

function query (code, table, args){
    if (code === 1){
        let query = `INSERT INTO ${table} VALUES (${args})`
        console.log(query)
        return query
    }
}

根据评论的建议,我写了一个ajax请求。他成功地说他能够到达所需的页面(状态 = 200),但没有返回任何内容,也没有打印到控制台。

那么如何值得更改此代码以便通过请求发送整个参数集(我认为将其作为字典进行,但我不确定它是否正确),最重要的是,如何获取数据在 SQL 查询形成页面上?

PS:目前如果我将输出放在服务器上的控制台中

console.log('Строка аргументов: ' + request.body)

返回undefined。

javascript
  • 1 个回答
  • 10 Views
Martin Hope
Александр
Asked: 2021-11-25 00:38:45 +0000 UTC

不包括外部 css 文件

  • 0

我正在尝试使用 node.js 开始开发。我几乎不会在里面或 js 中翻找,但我想弄清楚。启动服务器时,我重定向到主页,但样式未连接到它。下面的代码

const http = require('http')
const fs = require('fs')
const path = require('path')

const server = http.createServer((req, res)=>{
    
    let filePath = path.join(__dirname, 'html', req.url === '/' ? 'index.html' : req.url)
    const ext = path.extname(filePath)
    
    let contentType = 'text/html'
    switch (ext){
        case '.css':
            contentType = 'text/css'
            break
        case '.js':
            contentType = 'text/javascript'
            break
        default:
            contentType = 'text/html'
    }
    
    if(!ext){
        filePath += '.html'
    }

    fs.readFile(filePath, (err, content) => {
        if(err){
            fs.readFile(path.join(__dirname, 'html', 'error.html'), (err, data)=>{
                if(err){
                    res.writeHead(500)
                    res.end('Error')
                } else{
                    res.writeHead(200, {
                        'Content-Type': contentType
                    })
                    res.end(data)
                }
            })
        } else{
            res.statusCode = 200;
            res.setHeader('Content-Type', contentType);
            res.end(content)
        }
    })
    
})

const PORT = process.env.PORT || 3000

server.listen(PORT, ()=>{
    console.log(`Server has been started on ${PORT} ...`)
})
body{
    background: rgb(223, 12, 12);
}
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" type="text/css" href="/css/style.css">
    <title>Home page</title>
</head>
<body>
    <nav>
        <a href="/">Home</a>
        <a href="/contact">Contact</a>
    </nav>
    <h1>Home page</h1>
</body>
</html>

<!-- begin snippet: js hide: false console: true babel: false -->

文件夹结构如下:

我试图以不同的方式连接风格,有一点,有两个,没有它们。始终为白色背景和黑色文本。如果将 css 推入 html 文件夹,则样式已连接,但这可能不正确。最初,浏览器有一个样式被识别为的警告type="text/html",但现在没有这样的消息。

我想知道如何使一切正常工作?

PS:题外话:有什么值得看的,明确如何在node.js下开发(初学者最好清晰易懂)?

html
  • 1 个回答
  • 10 Views
Martin Hope
Александр
Asked: 2021-11-13 18:29:05 +0000 UTC

从 php 数组中选择唯一的数组

  • 0

任务如下。接收到包含其他数组的数组,例如:

$arr = array(
        array(
            '0' => 'Химия',
            '1' => 'очная',
            '2' => 'пропуск'
        ),
        array(
            '0' => 'Химия',
            '1' => 'заочная',
            '2' => 'пропуск'
        ),
        array(
            '0' => 'Химия',
            '1' => 'очная',
            '2' => 'пропуск'
        ),
        array(
            '0' => 'Физика',
            '1' => 'очная',
            '2' => 'пропуск'
        )
    );

只有唯一的集合需要从这个集合中提取。所有字段中的值都会改变。实际上,我不明白如何根据几列的唯一性来选择数组。

结果,您应该得到数组:

'Химия', 'очная', 'пропуск'
'Химия', 'заочная', 'пропуск'
'Физика', 'очная', 'пропуск'

尝试通过array_unique($arr);但只获得一个第一个条目

我在网站上发现了一个关于采样的问题,但是很可惜,它不适合我。

值得补充的是,在内部数组中,也有包含不同数据的列。

php
  • 2 个回答
  • 10 Views
Martin Hope
Александр
Asked: 2021-10-23 00:38:17 +0000 UTC

添加按键处理程序

  • 0

我的任务是让我自己随机。我正在生成一定长度的随机数,比如 3 位数字。生成应该通过鼠标点击和击键发生。PictureBox 用作用户可以用鼠标单击的区域,我可以从中获取坐标并进行加减等操作。现在我需要对键进行定义,以便获取它们的代码并对这些代码进行数学转换,例如添加。

我不知道为什么我的处理程序没有被钩住以及如何正确钩住它。处理程序本身将通过单击按钮启动,并通过单击另一个按钮将其关闭,至少我希望如此。

单击按钮时,将调用以下代码:

private void button1_Click(object sender, EventArgs e)
{
    pictureBox1.MouseClick += OnPictureBoxClicked;

    pictureBox1.PreviewKeyDown += OnPreviewKeyDown;
}


void OnPreviewKeyDown(object sender, KeyEventArgs e)
{
    //e.KeyData.ToString();
}

实际上,我正在尝试通过单击来类比添加处理程序,但出现错误。虽然点击处理程序有效。我不明白我做错了什么。

发生错误,例如,如下所示: 在此处输入图像描述

是的,现在我每次都订阅处理程序,我该如何避免这种情况?很高兴知道。

c#
  • 1 个回答
  • 10 Views
Martin Hope
Александр
Asked: 2020-06-04 17:52:08 +0000 UTC

使用访问修饰符

  • 1

下面给出了一个特定的抽象类。

abstract class Score{
    private double balance;

    protected String getBalance(String pin){
        if (check(pin))
            return Double.toString(balance);
        return "Введенный пин-код не корректен";
    }
    //баланс для внутренних операций
    protected Double getBalance(){
        return balance;
    }
}

需要两种方法,因为对于手动操作,将使用第一种方法(使用 PIN 码),而对于自动操作,将使用第二种方法(自动,例如,现金返还应计)。

有一个实现以下功能的后继者

public class RegularAccount extends Score{

    public void pay() {
        double price = super.getBalance() * 0.1;
        //TODO
    }
}

一切都会好起来的,但是如果你创建了一个类的实例RegularAccount,你可以直接调用该方法getBalance(),这是我想禁止的。我试图将方法变成一个接口,使其抽象,只是使用访问修饰符,但这一切都没有帮助或者是不可接受的。

从逻辑上讲,我假设getBalance()抽象类中的方法应该是private,但是如何从继承人那里调用它,以尽可能保护自己呢?

有没有办法解决这个问题。

java
  • 2 个回答
  • 10 Views
Martin Hope
Александр
Asked: 2020-05-29 18:50:50 +0000 UTC

Java中使用抽象类与接口的区别与正确性

  • 3

我试图了解这两个元素有何不同。我在这里和这里阅读,以及我正在学习的讲座。如果我理解正确,除了定义和连接之外,我还看到以下可能性:

抽象类

  1. 不能实例化一个类
  2. 至少必须定义方法的标头,因此继承者必须覆盖此方法
  3. 方法可以完全实现
  4. 该方法可以被继承人覆盖,因此将获得1个方法
  5. 不固定的变量值

界面

  1. 接口无法实例化
  2. 必须定义方法头
  3. 该方法可以被覆盖,结果将有2个方法(尽管如果一个就足够了,为什么我们需要这么多方法)
  4. 方法可以使用默认值定义
  5. 变量的固定值

我知道接口定义状态,而抽象类定义状态和行为。那么为什么不只使用一个变体,例如一个类呢?

我们只能从一个类继承,但可以从多个接口继承。但是,为什么不创建更多的抽象类并相互继承,从而在工作类中继承一些东西呢?

什么时候应该使用一个而不是另一个?

是否存在需要使用一个或另一个选项的用例?

对Java中的应用程序感兴趣。

加法 假设有这样的结构。

abstract class Figure {
    double dim1;
    double dim2;

    Figure(double a, double b) {
        dim1 = a;
        dim2 = b;
    }

    abstract double area();
}

有一个三角形类:

class Rectangle extends Figure {
    Rectangle(double a, double b) {
        super(a, b);
    }

    double area() {
        System.out.println("B области четырехугольника.");
        return dim1 * dim2;
    }
}

有一个正方形类:

class Triangle extends Figure {
    Triangle(double a, double b) {
        super(a, b);
    }

    double area() {
        System.out.println("B области треугольника.");
        return dim1 * dim2 / 2;
    }
}

有一个入口点:

class AbsractAreas {
    public static void main(String[] args) {
        Rectangle r = new Rectangle(9, 5);
        Triangle t = new Triangle(10, 8);
        Figure figRef = r;
        System.out.println("Площадь равна " + figRef.area());
        figRef = t;
        System.out.println("Площадь равна " + figRef.area());
    }
}

我可以将其转换为接口吗?应该转换成接口吗?还是应该一分为二?

PS:接口的附加问题。我知道接口旨在保护类的工作方式。但是对类施加限制还不够吗(我的意思是访问修饰符)?

PS PS:为什么要在接口中添加定义方法体的功能?而现在,如果我在接口中定义一个方法,例如move (int n),在继承人中,我需要使用move (int n, int m). 用一个方法创建一个抽象类move ()然后重新定义它以获得所需数量的参数不是更容易吗?或者您是否有能力在接口中覆盖方法中的参数数量?还是我们仍然有两种方法move (int n)和move (int n, int m)?

PS PS PS:抱歉这么多问题。我只是想深入了解这个问题。)

java
  • 3 个回答
  • 10 Views
Martin Hope
Александр
Asked: 2020-05-05 12:37:50 +0000 UTC

如果还没有具有主键的记录,则将记录插入具有外键的表中

  • 3

例如,有两个具有以下结构的表:

CREATE TABLE A ( 
    ID number PRIMARY KEY,
    TEXT varchar2(4000)
);
CREATE TABLE B ( 
    ID number PRIMARY KEY REFERENCES A,
    KEY varchar2(256)            
); 

在表 A 上创建了两个触发器(它们在这个问题中给出)。

第一个触发器Id为两个 PK 生成。在第二个触发器中,文本被加密,加密应该替换 A 中插入的文本,并且使用加密密钥,它应该在表 B 中插入一条新记录。

但是由于表 B 上的外键,我无法在其中插入一条Id不在表 A 中的记录。

问题是,如何实施?

sql
  • 3 个回答
  • 10 Views
Martin Hope
Александр
Asked: 2020-05-04 17:55:22 +0000 UTC

顺序触发

  • 2

当您尝试向表中插入记录accounts时,必须对其进行加密,并且必须将新记录添加到包含插入记录的代码和加密密钥的第三方表中。为此,我决定做一个触发器。关键是该表accounts已经有一个生成唯一值的触发器。我表示要先生成PK,然后调用新的触发器。

为此,我修改了触发器 PK:

CREATE OR REPLACE TRIGGER  ACCOUNTS_Triger 
    before INSERT ON ACCOUNTS FOR each ROW
    FOLLOWS trig_insert
BEGIN
    :new.ACCOUNT_ID := ACCOUNTS_seq.nextval;
END;

新的触发代码:

CREATE OR REPLACE TRIGGER trig_insert 
BEFORE INSERT ON ACCOUNTS
FOR EACH ROW
DECLARE
    p_key VARCHAR2(200);
BEGIN
    dbms_output.put_line(:new.ACCOUNT_ID);
    INSERT INTO ACCOUNTS_KEY VALUES(:new.ACCOUNT_ID, p_key); 
END;

目前,我收到一条错误消息,指出该字段:new.ACCOUNT_ID包含null.

如何更改代码以便按我指定的顺序依次调用触发器?

sql
  • 1 个回答
  • 10 Views
Martin Hope
Александр
Asked: 2020-03-13 22:28:46 +0000 UTC

通过 OUT 参数从过程结果输出

  • 3

需要通过 OUT 参数实现程序的输出,而不使用剪贴板,即dbms_output.put_line.

该程序在包装中。

PROCEDURE array_app
    (street IN Streets.TITLE%TYPE,
    dom IN APARTMENTS.HOUSE%TYPE,
    res OUT Varchar2) 
IS
    CURSOR my_cur IS SELECT DISTINCT idapart FROM POSSESSION;
    CURSOR cur1 (street IN VARCHAR2, dom IN INTEGER)  
    IS
        SELECT APARTMENTS.id, num FROM APARTMENTS, Streets
        WHERE HOUSE = dom AND TITLE = street AND APARTMENTS.IDSTREET = Streets.ID;
    kv INTEGER;
    cnumber number;
    str Varchar2(100);
BEGIN
    res := '';
    OPEN cur1 (street, dom);
    FETCH cur1 INTO cnumber, kv;
        FOR f IN  my_cur  LOOP
            IF f.idapart = cnumber THEN
                str := res;
                select str || ', ' || kv INTO res from dual;
                RETURN;
            END IF;
        END LOOP;
    CLOSE cur1;
END;

和一个过程调用

DECLARE
   res1 Varchar2(100);
BEGIN
   pack.array_app('Татищева', 75, res1);
END;

数据示例:这是一个房屋表,其中的列分别是代码、街道和门牌号以及公寓号:

CREATE TABLE Apartments (id INTEGER PRIMARY KEY, idstreet VARCHAR2(100), house INTEGER NOT NULL, num INTEGER);

INSERT INTO Apartments (id, idstreet, house, num) VALUES (1, 'Татищева', 75, 5);
INSERT INTO Apartments (id, idstreet, house, num) VALUES (2, 'Кирова', 3, 15);
INSERT INTO Apartments (id, idstreet, house, num) VALUES (3, 'Новая', 28, 34);
INSERT INTO Apartments (id, idstreet, house, num) VALUES (4, 'Татищева', 75, 150);

还有一个所有权表,其中包含所有权对象的代码:

CREATE TABLE Possession (id INTEGER PRIMARY KEY, idapart INTEGER NOT NULL REFERENCES Apartments);

INSERT INTO Possession (id, idapart) VALUES (1, 1);
INSERT INTO Possession (id, idapart) VALUES (2, 4);

因此,结果,代码为 1 的记录被选中并返回公寓号码。如果输入数据集中有多个元素包含在两个带有数据的表中,则应返回所有相应的公寓号码。

sql
  • 1 个回答
  • 10 Views
Martin Hope
Александр
Asked: 2020-11-19 19:36:33 +0000 UTC

对 LINQ 分组进行排序

  • 0

有一个包含数据的集合。我向它写了以下请求:

var rezult = Должники
    .GroupBy(x => ((x.num-1)/36).ToString())
    .Select(x => new { a = x
                          .Select(y => new { y.dolg, y.num, y.fam })
                          .OrderByDescending(y=>y.dolg)
                          .Take(3),
                       b = x.Key});

它有效,我得到了解决方案的一部分。我需要按 dolg 字段的降序对该请求进行排序。我试图在最后添加这样的结构:

.OrderByDescending(x=>x.a)

但是,然后我得到异常“至少一个对象必须实现 IComparable 接口”。然后如何在不考虑先前完成的分组的情况下进行排序?添加

List<Должник> Должники = new List<Должник>();
Должники.Add(new Должник(58.7, "Карапузова", 5));
Должники.Add(new Должник(34.5, "Чуприн", 10));
Должники.Add(new Должник(58.7, "Карапузова", 5));
Должники.Add(new Должник(34.5, "Чуприн", 10));
Должники.Add(new Должник(64.1, "Большова", 25));
Должники.Add(new Должник(54.6, "Бурцев", 15));
Должники.Add(new Должник(21.3, "Беленкова", 30));
Должники.Add(new Должник(87.9, "Сырова", 37));
Должники.Add(new Должник(27.9, "Малец", 42));
Должники.Add(new Должник(54.6, "Бакарчук", 86));
Должники.Add(new Должник(58.7, "Макарова", 90));
Должники.Add(new Должник(34.5, "Калашникова", 100));
Должники.Add(new Должник(64.1, "Мосин", 97));
Должники.Add(new Должник(54.1, "Драгунов", 107));

Debtor 类本身也已实现,并包含以下字段:

public double dolg;
public String fam;
public int num;

我目前所拥有的没有错误 在此处输入图像描述

我需要排序才能在债务领域工作

c#
  • 1 个回答
  • 10 Views
Martin Hope
Александр
Asked: 2020-04-28 16:48:35 +0000 UTC

双跳实现

  • 1

其实名字就是问题。代码如下:

private bool isGrounded = true;
private bool isAir = false;

private void Update()
{
    if (isGrounded) State = CharState.Idle;
    if (isGrounded && Input.GetButtonDown("Jump")) Jump();
    //if (isAir && Input.GetButtonDown("Jump")) DoubleJump();
    //if (isGrounded && Input.GetButtonDown("Jump + Jump")) DoubleJump();
}
private void Jump()
{
    if (Input.GetButtonDown("Jump")) DoubleJump();
    else { rigidbody.AddForce(transform.up * jumpForce, ForceMode2D.Impulse); }
    //rigidbody.AddForce(transform.up * jumpForce, ForceMode2D.Impulse);
    //isAir = true; isGrounded = false;
}
private void DoubleJump()
{
    rigidbody.AddForce(2 * transform.up * jumpForce, ForceMode2D.Impulse);
    //isAir = false;
    //isGrounded = true;
}

上一次尝试是这样的,但是当 Jump 方法被激活时,角色立即陷入了 DoubleJump,虽然不应该这样。

c#
  • 1 个回答
  • 10 Views
Martin Hope
Александр
Asked: 2020-01-10 19:31:22 +0000 UTC

在java图中搜索

  • 3

给定一个长度为 (n+1) 的数组 A,其中包含从 1 到 n 的自然数。在 O(n) 时间内查找任何重复元素,无需修改数组且不使用额外内存。

public static void main (String[] args){

    int[] array = {7, 5, 2, 5, 3, 2, 1, 8, 4};

    newFind(array);
}
public static void newFind(int[] mas){
    int index = mas.length;
    int el = mas[index - 1];
    int object = mas[el - 1];
    while (true){

        object = mas[el - 1];
        el = mas[object - 1];
        el = mas[el - 1];
        el = mas[el - 1];

        if (object == el) {
            System.out.println(el);
            break;
        }
    }
}

我是这样实现的,但是如果循环有更多或更少的步骤,那么程序就会中断。我的问题是我不明白如何计算循环长度到重复元素并在屏幕上显示元素。请帮帮我。

java
  • 1 个回答
  • 10 Views
Martin Hope
Александр
Asked: 2020-12-31 02:03:12 +0000 UTC

处理按钮单击并从字段中获取文本

  • 1

问题在问题的标题中。我有几节课。这是第一个

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

public class GraphicalDisplay {

private JFrame frame;
private JLabel titleLabel1;
private JLabel titleLabel2;
private JLabel titleLabel3;
private JLabel titleLabel4;
private JLabel titleLabel5;
private TextField text;
private Button button;
private JLabel titleLabel6;


public GraphicalDisplay(String title1, String title2, String title3, String title4) {
    buildFrame();
    titleLabel1.setText(title1);
    titleLabel2.setText(title2);
    titleLabel3.setText(title3);
    titleLabel6.setText(title4);
}

private void buildFrame() {
    frame = new JFrame("Графический дисплей");
    frame.setPreferredSize(new Dimension(800, 300));
    frame.setLayout(new GridLayout(8, 1));

    titleLabel1 = new JLabel();
    titleLabel2 = new JLabel();
    titleLabel3 = new JLabel();
    titleLabel6 = new JLabel();
    text = new TextField("", 50);
    button = new Button("Ввести");
    button.addActionListener((ActionListener) this);
    frame.add(titleLabel1);
    frame.add(titleLabel2);
    frame.add(titleLabel3);
    frame.add(text);
    frame.add(button);
    frame.add(titleLabel6);


    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setAlwaysOnTop(true);
    frame.setVisible(true);
    frame.pack();
    }

    @Override
    public void mouseClicked(ActionEvent e) {
        getText1();
    }

    public String getText1() {
        String textbutton = text.getText();
        return textbutton;
    }

    public void setText4(String text) {
        titleLabel6.setText(text);
    }

}

这是第二个

import java.awt.event.MouseEvent;
import java.util.HashSet;

public class SupportSystem
{
private InputReader reader;
private Responder responder;
public GraphicalDisplay display1;

public SupportSystem()
{
    reader = new InputReader();
    responder = new Responder();
}

public void start()
{
    boolean finished = false;

    printWelcome();

    while(!finished) {
        String textbutton = display1.mouseClicked(MouseEvent);
        HashSet<String> input = reader.getInput(textbutton);


        if(input.contains("exit")==true) {
            finished = true;
        }
        else {
            String response = responder.generateResponse(input);
            System.out.println(response);
        }
    }
    printGoodbye();
}

public void printWelcome()
{
    display1 = new GraphicalDisplay("Добро пожаловать в техподдержку DodgySoft.", "Расскажите нам о вашей проблеме.", "Введите 'exit' для выхода из системы.","");
}

private void printGoodbye()
{
    display1.setText4("Приятно было пообщаться. До свидания...");
}

}

研究 Internet 上的内容,我发现了各种处理程序、侦听器、事件等。我自己甚至无法理解它的外观,更不用说工作了。帮助!

java
  • 1 个回答
  • 10 Views
Martin Hope
Александр
Asked: 2020-11-30 19:21:42 +0000 UTC

对整数数组进行排序

  • 0

有 2 个带数字的数组。它们中的元素具有一定的依赖性,即 数组的 0 元素 1 “链接”到数组的 0 元素 2,依此类推。有必要以某种方式以相对于 Vi / Wi 的降序对对象进行排序,并将其写入新的集合或数组中。然后,如有必要,当从那里取出对象时,以某种方式获得它们的原始关系。

static int[] values = new int[] {10, 8, 3, 8, 8}; // цены
static int[] weights = new int[] {8, 3, 4, 3, 3}; //вес предметов

PS:我用贪心算法解决背包问题

java
  • 2 个回答
  • 10 Views
Martin Hope
Александр
Asked: 2020-11-20 15:03:54 +0000 UTC

在 C# 中从 sql 数据创建 Word

  • 1

我有分贝。我连接到它并请求感兴趣的领域。如何进一步将收到的信息放在 Word 中的表格中(准确地说,如何循环接收收到的信息以及如何获取其特定值)。也许有些事情需要做不同的事情,建议。

int Rieltor_code = int.Parse(comboBox3.SelectedValue.ToString());
if (comboBox4.Text.Trim() == "Таблица") {

con.Open();
string query = "SELECT \"Object_nedvizimosti\".\"adress\", \"Prodaja\".\"Data\",
              \"Object_nedvizimosti\".\"stoimost\", \"Prodaja\".\"Stoimost\",
              (\"Prodaja\".\"Stoimost\" /\"Object_nedvizimosti\".\"stoimost\") " +
                "FROM \"Prodaja\", \"Object_nedvizimosti\", \"Rieltor\" " +
                "WHERE \"Prodaja\".\"Object_code\" = \"Object_nedvizimosti\".\"object_code\" 
                and" + " \"Object_nedvizimosti\".\"statuc\" = 0
                and \"Prodaja\".\"Rieltor_code\" = \"Rieltor\".\"rieltor_code\""
                + @Rieltor_code ;//еще нужна дата продажи
NpgsqlCommand com = new NpgsqlCommand(query, con);
com.ExecuteNonQuery();
con.Close();

var Ворд1 = new Ворд.Word.Application();
Ворд1.Visible = true;
Ворд1.Documents.Add();
Ворд1.Selection.TypeText("ТАБЛИЦА ОБЪЕКТОВ НЕДВИЖИМОСТИ");
Ворд1.ActiveDocument.Tables.Add(Ворд1.Selection.Range, 30, 5,
Ворд.Word.WdDefaultTableBehavior.wdWord9TableBehavior,
Ворд.Word.WdAutoFitBehavior.wdAutoFitContent);
while (query.Read())
      {
         Ворд1.ActiveDocument.Tables[1].Cell(i, 1).Range.InsertAfter(query.GetValue(1).ToString());
         Ворд1.ActiveDocument.Tables[1].Cell(i, 2).Range.InsertAfter(query.GetValue(2).ToString());
         Ворд1.ActiveDocument.Tables[1].Cell(i, 3).Range.InsertAfter(query.GetValue(3).ToString());
         Ворд1.ActiveDocument.Tables[1].Cell(i, 4).Range.InsertAfter(query.GetValue(4).ToString());
         Ворд1.ActiveDocument.Tables[1].Cell(i, 5).Range.InsertAfter(query.GetValue(5).ToString());
            }
Ворд1.Selection.MoveDown(Ворд.Word.WdUnits.wdLine, 9); ; }
c#
  • 1 个回答
  • 10 Views

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    我看不懂措辞

    • 1 个回答
  • Marko Smith

    请求的模块“del”不提供名为“default”的导出

    • 3 个回答
  • Marko Smith

    "!+tab" 在 HTML 的 vs 代码中不起作用

    • 5 个回答
  • Marko Smith

    我正在尝试解决“猜词”的问题。Python

    • 2 个回答
  • Marko Smith

    可以使用哪些命令将当前指针移动到指定的提交而不更改工作目录中的文件?

    • 1 个回答
  • Marko Smith

    Python解析野莓

    • 1 个回答
  • Marko Smith

    问题:“警告:检查最新版本的 pip 时出错。”

    • 2 个回答
  • Marko Smith

    帮助编写一个用值填充变量的循环。解决这个问题

    • 2 个回答
  • Marko Smith

    尽管依赖数组为空,但在渲染上调用了 2 次 useEffect

    • 2 个回答
  • Marko Smith

    数据不通过 Telegram.WebApp.sendData 发送

    • 1 个回答
  • Martin Hope
    Alexandr_TT 2020年新年大赛! 2020-12-20 18:20:21 +0000 UTC
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5